Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature Request] 关于下载百度网盘pdf等文档文件的新思路 #342

Open
JamesBrosy opened this issue Aug 5, 2024 · 2 comments

Comments

@JamesBrosy
Copy link

背景: 作为网盘存书等文档的重度用户,下载pdf,word,ppt等文档文件可能需求量更多

思路复现: 我是非svip用户,但是我能通过如下方法实现几兆的下载文档的速度(下面是我在模拟器中的的思路复现)


我尝试通过 Burpsuite 抓包解决:

Screenshot_20240805_133559-1
Screenshot_20240805_140815-1

我想是否能利用这种方法提升下载文档的速度,并且我猜想这种方法似乎应该很稳定。
因为可以通过百度网盘app这样做,我对比了上面的请求url和我通过 BaiduPCS-Go 获取到的直链,大部分相同,但也有细微的差别:

  1. 目标Host不一样(我尝试了通过我这个方法下载其他pdf文件,但是发现Host都是 allall02.baidupcs.com
  2. 还有一些参数不一样。

当然我不知道这种方法是不是使用了 BaiduPCS-Go 中也提到了的 PCS API,但是下载速度确实是比通过 BaiduPCS-Go 下载的速度要快,通过 BaiduPCS-Go 下载速度却只是 kb 级。
同时两者通过motrix下载的效果却是很大,我用motrix下载我上面抓到的url,并设置user-agent,下载速度很快:

0-Screenshot_20240805_151250-2

Screenshot_20240805_152426

但是我使用motrix下载 BaiduPCS-Go 获取到的直链,直接返回错误码22(HTTP response header was bad or unexpected)
我将域名换成 allall02.baidupcs.com 结果依然是返回错误码22,说明参数也有问题。

写在最后

以上是我通过分析数据包获取的一点思路,希望有用。我不知道这种方法是否对音视频文件和压缩包文件有用。

@luoyingying123
Copy link

luoyingying123 commented Aug 8, 2024

试着预览1G大的pdf文件用小黄鸟抓取,发现另外有个bjdd-ct10.baidupcs.com的链接下载0-262143的字节,再用allall01.baidupcs.com下载262144-524287的字节,再继续如此交替用两个链接下载。用其中一条链接改range头也可以用,超过5120KB就403了,跟你的情况有点不同

@JamesBrosy
Copy link
Author

试着预览1G大的pdf文件用小黄鸟抓取,发现另外有个bjdd-ct10.baidupcs.com的链接下载0-262143的字节,再用allall01.baidupcs.com下载262144-524287的字节,再继续如此交替用两个链接下载。用其中一条链接改range头也可以用,超过5120KB就403了,跟你的情况有点不同

没测试过那么大的文件,一般的一两百多MB的文件下载速度都还可以,也能够满足绝大多数需求了。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants