[Feature Request] 关于下载百度网盘pdf等文档文件的新思路
JamesBrosy opened this issue · 2 comments
背景: 作为网盘存书等文档的重度用户,下载pdf,word,ppt等文档文件可能需求量更多
思路复现: 我是非svip用户,但是我能通过如下方法实现几兆的下载文档的速度(下面是我在模拟器中的的思路复现)
我尝试通过 Burpsuite 抓包解决:
我想是否能利用这种方法提升下载文档的速度,并且我猜想这种方法似乎应该很稳定。
因为可以通过百度网盘app这样做,我对比了上面的请求url和我通过 BaiduPCS-Go
获取到的直链,大部分相同,但也有细微的差别:
- 目标Host不一样(我尝试了通过我这个方法下载其他pdf文件,但是发现Host都是
allall02.baidupcs.com
) - 还有一些参数不一样。
当然我不知道这种方法是不是使用了 BaiduPCS-Go
中也提到了的 PCS API,但是下载速度确实是比通过 BaiduPCS-Go
下载的速度要快,通过 BaiduPCS-Go
下载速度却只是 kb 级。
同时两者通过motrix下载的效果却是很大,我用motrix下载我上面抓到的url,并设置user-agent,下载速度很快:
但是我使用motrix下载 BaiduPCS-Go
获取到的直链,直接返回错误码22(HTTP response header was bad or unexpected)
我将域名换成 allall02.baidupcs.com
结果依然是返回错误码22,说明参数也有问题。
写在最后
以上是我通过分析数据包获取的一点思路,希望有用。我不知道这种方法是否对音视频文件和压缩包文件有用。
试着预览1G大的pdf文件用小黄鸟抓取,发现另外有个bjdd-ct10.baidupcs.com
的链接下载0-262143的字节,再用allall01.baidupcs.com
下载262144-524287的字节,再继续如此交替用两个链接下载。用其中一条链接改range头也可以用,超过5120KB就403了,跟你的情况有点不同
试着预览1G大的pdf文件用小黄鸟抓取,发现另外有个
bjdd-ct10.baidupcs.com
的链接下载0-262143的字节,再用allall01.baidupcs.com
下载262144-524287的字节,再继续如此交替用两个链接下载。用其中一条链接改range头也可以用,超过5120KB就403了,跟你的情况有点不同
没测试过那么大的文件,一般的一两百多MB的文件下载速度都还可以,也能够满足绝大多数需求了。