导语
根据后台留言以及自己的一些需求,更新了一下之前发布的视频下载器,增加了对斗鱼、CNTV、Ted演讲视频的下载支持。这里水篇文章简单介绍一下。
让我们愉快地开始吧~
开发工具
Python版本:3.6.4
相关模块:
PIL模块;
requests模块;
click模块;
以及一些Python自带的模块。
环境搭建
安装Python并添加到环境变量,pip安装需要的相关模块即可。
原理简介
斗鱼回放视频下载:
就是这里的视频:
之前后台有人问我怎么下载这些视频,其实和知乎一样,这里的视频也是m3u8、ts流格式的,所以直接调用我之前写的那个简单的解析类就可以下载了。至于怎么获取视频的下载地址,比如:
https://v.douyu.com/show/8KxjMdB3GQQvVLwb
其实8KxjMdB3GQQvVLwb就是该视频的ID,将该ID与斗鱼移动端的API接口:
http://vmobile.douyu.com/video/getInfo?vid={}
组合成一个新的链接地址:
http://vmobile.douyu.com/video/getInfo?vid=8KxjMdB3GQQvVLwb
请求该链接地址,即可获得对应视频的下载地址。
CNTV视频下载:
就是这里的视频:
原理和斗鱼回放视频的下载类似,我是为了缓存武林外传写的这个脚本。请求对应的API地址会返回一堆切片后的视频链接,依次下载然后合并就行了。
TED演讲视频下载:
就是这里的视频:
有些演讲还是挺不错的,想下载保存起来,以后自己还可以再看看。
审查网页元素,直接就可以看到视频的下载地址:
这个就不必多说了吧。
具体实现详见相关文件中的源代码。
视频演示
个人推荐使用CMD版。
效果如下:
关于如何下载VIP/付费视频的统一回复
自己充钱成为VIP会员!!!
因为该方法长期有效,以后类似的问题本人不再予以回复。
更多
代码截止2018-08-22测试无误。
希望别再拿旧版本的代码问我为什么某某功能不能用了!我看到也不想回了T_T
关于B站长视频下载不完整的问题:我没去研究,因为感觉会比较麻烦,有空再说吧。
关于知乎视频下载重复的问题:Sorry,我测试的时候多调用了一次下载函数,然后忘记去掉了,所以该BUG在新版视频下载器里已经修复了。
领取专属 10元无门槛券
私享最新 技术干货