批量提交百度网盘离线http/ftp下载

2013-09-13 12:05:16 +08:00
 weakish
十几行sh脚本的简单实现

代码放在 gitcafe 上

https://gitcafe.com/weakish/baidupan-cli/blob/master/baidupan-offline-dl.sh


依赖:

- curl
- jq (其实完全可以用grep/awk改写,去掉这个依赖,不过jq是单个执行文件,没有什么依赖,安装也很方便)

用法:

BaiduPanToken=1234aoeu BaiduPanPath='/apps/appname/your-dir' ./baidupan-offline-dl.sh urls.list

urls.list就是一个文本文件,一行一个网址。

存放路径的话,appname是应用名称,可以上百度盘网页版查看,/apps对应的是我的应用数据文件夹。

BaiduPanToken,正规的取得程序应该是注册百度开发者,提交应用,再用API key走OAuth取得,具体看百度的api文档, curl的例子看这里:http://www.haiyun.me/archives/859.html

如果妳通过其他应用获得过token,可以重复利用。(我就是重复利用了另一个应用的 token,因为注册百度开发者还需要验证手机号,不想让百度知道我的手机号。)

目前好像百度网盘只允许同时开5个下载,所以如果同时有5个下载了,就睡6分钟再接着提交,如果妳下的文件比较小的话,可以把脚本中的 sleep数值改小一点。

如果文件很多,不想一直开机的话,扔VPS上运行就是:

BaiduPanToken=1234aoeu BaiduPanPath='/apps/appname/your-dir' nohup ./baidupan-offline-dl.sh urls.list &

目前发现用api提交的下载任务,不会出现在网页版的下载列表中,而且需要点击一下音乐、视频、其他(取决于下载类型),然后才会在所有文件下的相关文件夹出现。

大概就是这样了吧。
14266 次点击
所在节点    云计算
4 条回复
viger
2013-09-13 12:06:52 +08:00
好东西,先收藏,待用。
tt0411
2013-09-13 12:32:05 +08:00
jq 是什么程序?是这个么: https://github.com/stedolan/jq
weakish
2013-09-13 16:16:10 +08:00
@tt0411 是的。(其实脚本里有写地址
fork3rt
2014-03-27 14:34:33 +08:00
貌似百度的cookie是有时限的吧。。 第二天就不能用了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/82296

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX