有时下载一些资源时很慢,无意中发现百度云可以离线下载,利用这一功能可以将文件存到云盘里,这样再下载就快了,
有时要离线的资源多,一个个来太费手,就想能不能批量离线,可惜人家并没有提供这个功能.
曾看到一个在浏览器控制台运行的js代码,实现了该功能.可是,操作过快就弹出验证码,最多成功一两个.
昨天经过抓包,发现确认离线时,浏览器发出了一个post请求,然后文件就进入了离线列表,
突然就想,如果人为模拟这个post请求,会不会成功了,于是就用强大的python试了下,果然,成功了,
可是,百度限制了离线任务数量,只允许同时离线5个.毕竟是免费的,没办法.
代码如下:
有时要离线的资源多,一个个来太费手,就想能不能批量离线,可惜人家并没有提供这个功能.
曾看到一个在浏览器控制台运行的js代码,实现了该功能.可是,操作过快就弹出验证码,最多成功一两个.
昨天经过抓包,发现确认离线时,浏览器发出了一个post请求,然后文件就进入了离线列表,
突然就想,如果人为模拟这个post请求,会不会成功了,于是就用强大的python试了下,果然,成功了,
可是,百度限制了离线任务数量,只允许同时离线5个.毕竟是免费的,没办法.
代码如下:
#coding=utf-8
import time
import requests
##########配置#############
#token 看下面说明
bdstoken=""
#资源地址列表
f_list=["url1","url2"]
#保存路径(相对路径,不懂的问度娘)
save_path="/我的资源/"
#cookie
cookie=""
#########################
heads={
"Host":"pan.baidu.com",
"Origin":"http://pan.baidu.com",
"Referer":"http://pan.baidu.com/disk/home",
"User-Agent":"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.85 Safari/537.36",
"Cookie": cookie
}
pdata={"