python多线程爬取加密后ts文件,解密后合成mp4视频
python多线程爬取加密后ts文件,解密后合成mp4视频
声明:仅供技术交流,请勿用于非法用途,如有其它非法用途造成损失,和本博客无关
前言
-
续我前几天发布的上篇博客:,说道爬视频有三种级别,上篇的例子属于中等级别,那么接下来的这篇是困难级别的。 其实,这里再修正一下,爬视频应该不止是3种级别,还有很多更加困难的网站。 所以,学无止境,尽管路途遥远,也要勇往直前~
废话不多说,下面直接开始吧,本次爬取的网站是
一、分析页面
- 用requests来请求播放页和js文件都会得不到网页的源代码,而是一个需要执行的JavaScript代码,因此,本文在拿到所有ts文件之前的操作均使用selenium来获取,比如获取播放页的网页源代码、获取js文件的响应内容。
- ts文件是经过加密处理的,下载下来的ts需要对其解密才能播放,这正是本文的重点,随机打开一个播放页,看到在第二个m3u8文件中多出了一行说明: 可以看到METHOD=AES-128说明是用AES-128的加密方法,其秘钥的链接为后面URI,请求这个链接得到加密秘钥:
二、视频解密
根据给出的秘钥即可以完成视频解密的操作,基本步骤是:将请求ts文件得到的响应内容进行解密之后,再做保存操作,下面以第一集视频解密为例,具体代码如下:
写在最后
上一篇:
通过多线程提高代码的执行效率例子
下一篇:
神经网络(二)回归与线性模型