公司头条

推广运维推广运维
关注: 1贴子:20 排名: 4 
0 回复贴,167 次查看
<返回列表

python实战小项目,多线程百度云盘下载,突破限速,超越迅雷超高速下载 ...

2

主题

2

帖子

12

积分

新手上路

Rank: 1

积分
12
发表于 2018-11-6 14:12:29
百度云盘限速阐发

1. 关于限速,我揣测有两种情况:


  • 限制下载资源的带宽
  • 限制下载资源时的线程或者进程数目
如果限速是第一种,多线程下载也无法提速。但如果是第二种限速,多线程下载理应能够显着提升下载速度,在一定范畴内,提速的程度与下载的线程数目成正相关关系。即,下载的线程越多,下载总速度越快。2. 多线程下载的具体思路以下:


  • 获得待下载文件的大小 size
  • 将待下载文件分成 n 块,第 i 块大小为 subi ,n 个 subi 之和等于 size
  • 在下载进程中开启 n 个线程,每一个线程负责下载一个 sub
  • 所有线程下载的资源根据原有顺序写入文件,完成后,该文件即为下载后的文件
百度云盘多线程加速下载,具体实现以下

1. 获得待下载文件的 size

以下载 python 2.7 为例,下载链接:点我下载,点击该链接时,应该会直接弹出下载窗口。通常,文件大小,文件名等信息都在请求 headers 里,python 可用以下代码获得该文件 headers:
import requestsurl = &quot;http://sw.bos.百度.com/sw-search-sp/software/f4373126dba59/python_2.7.13150.msi&quot;res = requests.head(url)print res.headers输出结果是一个 json 数据,花样化显示以下:
python实战小项目,多线程百度云盘下载,突破限速,超越迅雷超高速下载 ... Er3e3o3on3I3Erfn.jpg (25 Bytes, 下载次数: 2)
回复

使用道具 举报

快速回帖 使用高级回帖 (可批量传图、还有插入视频等功能哦!)

您需要登录后才可以回帖 登录 | 立即注册

  • 发布信息免费
  • 发贴彩色标题
  • 签到额外经验值

如何快速提升等级,查看[积分规则]

活动中心

查看更多>>
最新热版
会员排行
相关推荐
©2001-2018 公司头条 https://www.ewxf.com中国互联网举报中心沪ICP备14046342号-13 本站内容均来自网络转载或网友提供,如有侵权请及时联系我们,Cxy@izhiben.CN 公安网备|网站地图 企业map 产品map 新闻map 其他map
Archiver手机版小黑屋广告合作QQ:864633495
发帖 客服 微信 手机版 举报