最近女同让我帮助从百度云下载200个文件,给了我连接和提取码,这种重复的工作不适合人做写了一个简单的爬虫

#coding=utf-8
'''
自动填写提取码下载百度云资源
方法:
for
读取文件中的连接和提取码
1 打开网页(link)
2 输入提取码
3 下载
'''
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time driver = webdriver.Chrome()
f = open("baidulink.txt",encoding="utf-8")
l = open("log.txt","w")
lines = f.readlines()
for line in lines: if line != '\n':
if len(line) > 10:
print (line)
list = line.split(" ")
print (list)
link = list[2]
link = link.split(":")[1]
link = link.strip()
print (link)
num = list[3].split(":")[1]
num = num.strip()
print (num)
driver.get(link)
elem = driver.find_element_by_id("eoX9ze")
elem.send_keys(num)
elem.send_keys(Keys.RETURN)
time.sleep(1)
sreach_window = driver.current_window_handle
driver.find_element_by_xpath("//*[@id='layoutMain']/div[1]/div[1]/div/div[2]/div/div/div[2]/a[2]").click()
'''
写日志,便于检查下载丢失的文件
'''
l.writelines(line)
l.write('\n')
line = f.readline()
time.sleep(3)
f.close()

我把连接存在 baidulink.txt中,文件是逐行读取,提取出连接和提取码

使用selenium模拟浏览器,必须保证你的浏览器是Google Chrome,并装了chromedriver,相关内容自行百度

注意一下几点:

1 elem = driver.find_element_by_id("eoX9ze")

这个id好是会变的,如果变了按F12查看

2  sreach_window = driver.current_window_handle

页面跳转后,需要把driver定位到当前页面

3 driver.find_element_by_xpath("//*[@id='layoutMain']/div[1]/div[1]/div/div[2]/div/div/div[2]/a[2]").click()

这里使用xpath(还有id name selector等,选择适合的),可以使用选择那段代码然后复制xpath

以上功能十分简单,能够节省很多时间。如果频繁下载,会遇到输入验证码的时候,我选择等待,还有其他方法(可以使用代理等)

python实现简单的百度云自动下载的更多相关文章

  1. Vuejs 高仿饿了么外卖APP 百度云视频教程下载

    Vuejs 高仿饿了么外卖APP 百度云视频教程下载 链接:https://pan.baidu.com/s/1KPbKog0qJqXI-2ztQ19o7w 提取码: 关注公众号[GitHubCN]回复 ...

  2. 百度云高速下载Pandownload

    对于一些文件大小比较小的文件,可以直接在网页分享中点击[下载]来下载: 但是,对于较大点的文件,点击[下载]会弹出百度云的桌面客户端软件来下载: 但但是,下载速度实在是太慢了,强迫症真真等不及啊~ 幸 ...

  3. 如何用Python爬虫实现百度图片自动下载?

    Github:https://github.com/nnngu/LearningNotes 制作爬虫的步骤 制作一个爬虫一般分以下几个步骤: 分析需求 分析网页源代码,配合开发者工具 编写正则表达式或 ...

  4. 百度云资源下载加速软件推荐:proxyee-down

    百度云是个好东西(现在叫百度网盘不过我还是习惯叫百度云),2个T的免费容量可以存视频.软件包等各式文件,就是下载速度有点让人看不下去,不开会员的话就算你是百兆光纤还是量子通信都是被限速的,做为一个商业 ...

  5. python实现简单的百度翻译

    这段时间,一直在学python,想找点东西实现一下,练手,所以我想通过python代码来实现翻译,话不多说,看吧! 以chrome为例 1  打开百度翻译 https://fanyi.baidu.co ...

  6. python+selenium爬取百度文库不能下载的word文档

    有些时候我们需要用到百度文库的某些文章时,却发现需要会员才能下载,很难受,其实我们可以通过爬虫的方式来获取到我们所需要的文本. 工具:python3.7+selenium+任意一款编辑器 前期准备:可 ...

  7. 利用百度云接口实现车牌识别·python

    一个小需求---实现车牌识别. 目前有两个想法 1. 调云在线的接口或者使用SDK做开发(配置环境和变异第三方库麻烦,当然使用python可以避免这些问题) 2. 自己实现车牌识别算法(复杂) 一开始 ...

  8. python利用百度云接口实现车牌识别

    一个小需求---实现车牌识别. 目前有两个想法 调云在线的接口或者使用SDK做开发(配置环境和编译第三方库很麻烦,当然使用python可以避免这些问题) 自己实现车牌识别算法(复杂) ! 一开始准备使 ...

  9. awesomium_v1.6.6_sdk 百度云下载地址

    awesomium的官网已经关闭很久了,所以找不到正规的下载地址. 而csdn上面的又收费.所以这里提供一个不收费的百度云的下载地址给大家. 不足就是不是1.7版本,所以对于某些有特殊用途的满足不了了 ...

随机推荐

  1. 【公众号系列】SAP HANA 平台的优势

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[公众号系列]SAP HANA 平台的优势   ...

  2. CentOS7中利用Xshell6向虚拟机本地上传文件

    环境交代 Linux系统:CentOS7, Xshell版本:6 操作步骤 下面我们以一个文件上传来演示用法 第一步 建立连接,这里不多说 在Xshell中点击如下图标,或者直接按 Alt+Ctrl+ ...

  3. MySql 学习之路-高级1

    Mysql自学之路-高级1 目录: 1.CREATE DATABASE 创建数据库 2.CREATE TABLE 创建数据表 3.INSERT INTO SELECT 把一个表中的数据拷贝到另一个表中 ...

  4. 《Effective Java中文版第二版》读书笔记

    说明 这里是阅读<Effective Java中文版第二版>的读书笔记,这里会记录一些个人感觉稍微有些重要的内容,方便以后查阅,可能会因为个人实力原因导致理解有误,若有发现欢迎指出.一些个 ...

  5. Jenkins插件之显示构建时间

    1.进入jenkin插件管理器中,安装  Timestamper 插件 2.安装完成后,进入到构建任务里面,在 构建环境 中勾选  Add timestamps to the Console Outp ...

  6. rabbitMQ、activeMQ、zeroMQ、Kafka、Redis 比较

    Kafka作为时下最流行的开源消息系统,被广泛地应用在数据缓冲.异步通信.汇集日志.系统解耦等方面.相比较于RocketMQ等其他常见消息系统,Kafka在保障了大部分功能特性的同时,还提供了超一流的 ...

  7. JSP七大动作

  8. drawer

    import 'package:flutter/material.dart'; class DrawerPage extends StatefulWidget { @override _DrawerP ...

  9. OSGI插件(plugin)web工程建设步骤

     所有资源下载(汇总) 底包的下载地址:https://pan.baidu.com/s/15JxHOHf0AyZaLKPJUkpeXA 提取码: bujz web-target.war下载地址: ht ...

  10. C#中的虚函数及继承关系

    转载:http://blog.csdn.net/suncherrydream/article/details/8423991 若一个实例方法声明前带有virtual关键字,那么这个方法就是虚方法. 虚 ...