近期在使用python爬取ts类型的数据时,发现直接下载后的ts视频无法正常播放,大胆的百度了下,发现是因为视频加密的原因导致的。经过百度和谷歌后,接触到了pycrypto这个模块,这个模块的话主要是对加密的视频进行解密的。
由于该模块在安装时候比较不顺畅,踩了不少坑。因深知踩坑的痛苦、懊悔和烦恼,故特意写一篇文章来记录安装该模块的方法,防止后来人不断跳坑。
pip install pycryptodome
如果运行上述命令没有报错的话,那么恭喜你顺利安装成功,可以直接进入第三环节。
运行pip命令后,发现直接显示报错信息,报错信息如下:

经过一番尝试后,解决方案如下:
下载安装visual studio,并安装c++ 14.0的组件,如下图。

如果你再次运行,提示gcc报错的话,恭喜你!中了一个大奖!这个是由于anaconda中配置文件的原因。在这里分享下,解决该问题的方案。
from Crypto.Cipher import AES
# 对应的模块
from Crypto.Util.Padding import pad
#创建解析器
#注意key需要为二进制形式
cryptor = AES.new(key, AES.MODE_CBC, iv)
# 变为16的倍数,部分场景可能需要
#encrypted_data = pad(string, 16)
#data为需要进行解密的二进制字符串
result = cryptor.decrypt(data)