YunSpider
百度云网盘爬虫
Install / Use
/learn @gudegg/YunSpiderREADME
百度云爬虫
安装使用
- 安装go与设置gopath
- clone项目到gopath目录
- 安装依赖
- go get github.com/go-sql-driver/mysql
- go get github.com/siddontang/go/log
- go get github.com/garyburd/redigo/redis
- go get github.com/Unknwon/goconfig
- 修改config.ini配置文件中你自己的MySQL和Redis配置(可以不配Redis),Redis不配或者错误会默认将已经爬取的uk保存到hasIndexKeys.txt文件中,这样做防止重复爬同一位用户多次
- 创建database名为baidu,然后执行baidu.sql
- go run spider.go (当然也可以编译后运行,此时config.ini记得也复制到编译后的文件目录下,然后运行)
直接下载编译好的使用
- 下载适合自己系统的版本
- 修改config.ini配置文件,并且放到程序运行的目录下
- linux: chmod +x spider,然后直接./spider运行或者nohup ./spider 1>log.out 2>err.out &以后台方式运行;win:直接点击spider.exe运行
爬到数据使用
-
只需替换链接中uk,shareid或者album_id即可访问
- 分享专辑链接类型:https://pan.baidu.com/wap/album/info?uk=1112219283&album_id=129732510768224935
- 普通文件或者文件夹类型:https://pan.baidu.com/wap/link?uk=1112219283&shareid=2109459878
-
获取用户订阅: http://yun.baidu.com/pcloud/friend/getfollowlist?query_uk=%s&limit=24&start=%s&bdstoken=e6f1efec456b92778e70c55ba5d81c3d&channel=chunlei&clienttype=0&web=1&logid=MTQ3NDA3NDg5NzU4NDAuMzQxNDQyMDY2MjA5NDA4NjU=
(query_uk limit start是必须参数) -
获取用户粉丝: http://pan.baidu.com/pcloud/friend/getfanslist?query_uk=%s&limit=24&start=%s&bdstoken=null&channel=chunlei&clienttype=0&web=1&logid=MTQ3NDAzNjQwNzg3OTAuNzM1MzMxMDUyMDczMjYxNA== (query_uk limit start是必须参数)
-
获取用户分享: http://pan.baidu.com/pcloud/feed/getsharelist?t=1474202771918&category=0&auth_type=1&request_location=share_home&start=0&limit=60&query_uk=224534490&channel=chunlei&clienttype=0&web=1&logid=MTQ3NDIwMjc3MTkxOTAuMzA1NjAzMzQ4MTM1MDc0MTc=&bdstoken=e6f1efec456b92778e70c55ba5d81c3d (query_uk limit start auth_type是必须参数)
上面3个连接请求必须带上Referer
("Referer", "https://yun.baidu.com/share/home?uk=23432432#category/type=0"),否则请求不到json数据, 获取用户订阅和获取用户粉丝每次请求一次休眠2s的话可以无限制请求,对ip没要求,获取用户分享超坑,一个ip只能请求10次,并且休眠也没用. 因为没有那么多ip,我就去研究手机版的用户分享,手机版获取用户分享可以一次性连续请求60次,60次后必须休眠35s左右在继续请求就可以,不会像pc版那样必须换ip, 但是手机版只能请求网页源码,然后用正则进行匹配.
- 手机版分享: http://pan.baidu.com/wap/share/home?uk=2889076181&start=%s&adapt=pc&fr=ftw (uk:每个百度网盘用户的唯一标示,start:用户可能有上百上千个分享,必须分页,start默认从0开始,手机版默认分页是20个每页)
License
yunSpide source code is licensed under the Apache Licence, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0.html).
Related Skills
node-connect
349.0kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
109.4kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
349.0kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
349.0kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
