百度文库爬虫 Baidu Wenku Spider
仅支持python3
请勿将该脚本用于下载付费文档或商业用途,否则后果自负! 本项目仅为方便查看在线文档和交流爬虫技术。
目前该项目支持所有格式文档下载。
ppt仅能保存图片格式的pdf,建议下载后通过Acrobot等光学识别软件拷贝文字;
doc、pdf文件仅能保存为pdf,且可能看起来会有一些不同;
xls文件仅能保存为pdf,未来可能会支持保存为xls;
txt可保存为原始格式。
如果需要提取图片或查看原始数据,可以带参数-t
保存临时文件。
原理为下载网页中显示的内容,而并非原始文档,只能尽力还原格式。
目前来看,大部分情况无需会员账号cookies即可下载完整文档,即使非会员账号在网页尽可查看部分文档。猜测是仅仅在前端做了限制,不排除未来百度文库修复该漏洞。
要求Python3.5+,如有必要,请使用pip3和python3。
下载源码并安装依赖
git clone https://github.com/BoyInTheSun/wks
cd wks
pip install -r requirements.txt
python main.py --help
请下载对应系统版本的可执行程序。
在windows系统中,选择你喜欢的地方,将wks.exe
放到其中,按住shift右键,选择在此处打开powershell窗口
,输入.\wks.exe --help
查看帮助。
不要直接双击wks.exe
!!!
这是必要的步骤。首先登陆百度文库,按F12
打开开发者工具,找到网络
栏,F5
刷新,找到Request URL
和地址栏相同的一项,复制Request Headers
的Cookie
的值,形如kunlunFlag=1; PSTM=1638106870; __yjs_duid=1_9d69de0379cb51aa4b48e663f9e1e6591638110590672;...
获取到cookies后,可以通过命令行传参或者传文件两种形式。
.\wks.exe https://wenku.baidu.com/view/abcd.html -c "kunlunFlag=1; PSTM=1638106870;..."
.\wks.exe https://wenku.baidu.com/view/abcd.html -C Cookies.txt
显示帮助信息并退出。
传入cookie格式字符串,使请求带cookie。
传入cookie文件,使请求带cookie。优先级低于前者。
将临时文件保存到文件夹。
指定文件名(后缀名自动生成)
指定下载和保存的页数,例如"2,6-8,10"代表下载页码"2,6,7,8,10",从"1"开始。
指定请求时User-Agent。
批量下载。传入文件名,文件中一行一个链接。