首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
高速下载器系列
昊色居士
创建于2022-08-20
订阅专栏
你是否羡慕IDM的快速下载文件? 是否惊艳IDM的m3u8视频下载? 是否存在IDM因某些原因无法下载的苦恼? 带你从0开始手敲一个高速下载器
等 4 人订阅
共13篇文章
创建于2022-08-20
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
你也可以手敲一个高速下载器(十二)使用解析器
我们上一节写了一个cUrl解析器,这一节就来把他用在我们的下载器中,让我们的下载器更加智能化。。。。。。
你也可以手敲一个高速下载器(十三)保存下载块(上)
我们在最开始有提过下载块保存方案、其中包括保存在本地和内存中,我们目前的做法的保存是保存在内存中,但是对于那种特别大的文件会耗满我们的内存,所以我们这次根据情况把下载的块保存在本地。
你也可以手敲一个高速下载器(十一)Curl 解析器
上一节,我们说了`curl`相关的理论知识和在我们的业务中的解决方案,这一节就来详细说说怎么在`python`中实现这个`curl解析器`。。。。。。
你也可以手敲一个高速下载器(十)Curl 请求
我们上一节增加请求头的参数,但实际常用的还有请求方法和请求的数据,而不过在下载数据这一场景中不怎么常见而已,但我们也要支持啊。那就面临另外的一个问题了,传递的信息太多了,太麻烦了,为了解决这个问题。。
你也可以手敲一个高速下载器(九)请求信息与文件名
我们目前是直接通过 URL 下载的,且默认没有传递任何请求头和请求体的,但在实际使用当中很多请求是要校验这些信息的,比如不登录无法下载,比如没有传递要求的请求头无法下载
你也可以手敲一个高速下载器(八)命令行参数
到目前为止我们这样程序如果想要修改`下载的url`和`文件保存的路径`只能手动的去修改脚本代码,这样一点都不像一个程序,即便只是个终端程序,所以我们这里就为我们的程序添加一个启动参数
你也可以手敲一个高速下载器(七)加一点点细节
我们之前的程序对文件的处理比较简陋,直接保存的文件路径没有做文件夹判空处理,而且打印的出来的信息不够详细,并且日志里面的内容是不适合直接展现给用户的,所以我们这一节给我们的程序加一点点细节......
你也可以手敲一个高速下载器(六)下载进度条
在上节我们已经初步的实现的下载的功能,但是还差很多细节没有完善,这节我们就给我们的程序加一个进度条,下面是完成后的运行结果......
你也可以手敲一个高速下载器(五)基础下载
有了前几篇的基础,我们这节来实现一下基础的下载程序,我们的目标也很简单,就是能完成下载就行,先不要完善细节部分。
你也可以手敲一个高速下载器(四)通用请求类
记不记得前几天在 “爬虫之常用技术下” 中提到的`httpx`框架,今天我们就使用这么框架封装一个网络请求的通用类。。。。。。
你也可以手敲一个高速下载器(三)
上一篇讲了错误异常的重试,这节来说说日志相关的,还有`@dataclass`相关的东西。......
你也可以手敲一个高速下载器(二)重试
上节说过,高速下载器采用的多任务分段下载策略,所以要保证每个任务都能成功,所以就要有异常的重试。正常我们的操作是设置一个重试最大次数,然后发生异常的时候重新调用使用的方法,次数加一。。。。。。
你也可以手敲一个高速下载器(一)
`IDM`的大名,大家应该都听过,具备高速下载文件和下载视频的功能,今天我们也来学习一下如何使用`Python`自己手敲一个高速下载器。