python 解析迅雷下载链接
迅雷下载地址如下:
thunder://QUFodHRwOi8vZGwwMi55dXRvdS50djo5MjAvMTExMC9bMDHniYjlgJrlpKnlsaDpvpnorrBd56ysNDLpm4YvWzAx54mI5YCa5aSp5bGg6b6Z6K6wXeesrDQy6ZuGLm1wNFpa
真实地址是什么呢?
将普通url地址加前缀‘AA’、后缀‘ZZ’,再base64编码后得到的字符串
python提供了一个标准模块base64用于base64的编码和解码
迅雷地址转普通地址过程:
1,将迅雷地址去掉thunder://,得到base64编码后的字符串
2,将字符串解码,得到一个字节对象
3,将字节对象转成字符串对象
4,将字符串对象去掉前缀'AA'和后缀'ZZ'
代码如下:
import base64 url='thunder://QUFodHRwOi8vZGwwMi55dXRvdS50djo5MjAvMTExMC9bMDHniYjlgJrlpKnlsaDpvpnorrBd56ysNDLpm4YvWzAx54mI5YCa5aSp5bGg6b6Z6K6wXeesrDQy6ZuGLm1wNFpa' strb=url.lstrip('thunder://') urlb=base64.b64decode(strb) strurl=urlb.decode('utf-8') zsrul=strurl.strip('AAZZ') print(zsrul)
输出:http://dl02.yutou.tv:920/1110/[01版倚天屠龙记]第42集/[01版倚天屠龙记]第42集.mp4
注:
Base64编码是一种“防君子不防小人”的编码方式。广泛应用于MIME协议,作为电子邮件的传输编码,生成的编码可逆,后一两位可能有“=”,生成的编码都是ascii字符。
优点:速度快,ascii字符,肉眼不可理解
缺点:编码比较长,非常容易被破解,仅适用于加密非关键信息的场合