在播放页源码中,可以找到如下视频信息:
其中,vid的值 y00221a60w7 即为视频ID.
使用Chrome浏览器的开发者工具监控网络请求,发现getinfo接口的请求地址如下:
我们尝试构造各个请求参数,然后看看请求结果是什么样子的。
参数中的defn为清晰度标识,可选值有sd(标清)、hd(高清)、shd(超清)、fhd(1080P)。请求结果如下:
我们感兴趣的有三个列表:fi列表、ci列表、ui列表。
同样,在网络请求监测中发现getkey接口的请求是这样的:
构造参数如下:
参数中的vid为视频ID,format为码流的编号,filename根据分段信息中的keyid得来。以第四个分段为例,说说如何构造filename参数。第四个分段信息中的keyid为 y00221a60w7.10401.4 ,我们将keyid中间的 .10 替换为 .p ,然后在末尾加上 .mp4 即可。
getkey接口的请求结果示例如下:
看!key粗来了。
通过网络监测发现视频真实地址是像这样的:
分析该地址的构造,不难发现,地址前缀在前面的ui列表中已经得到了,filename也计算出来了,vkey参数就是上面得到的key.
运行输出如下:
请重新下载安装程序
,并安装;
温馨提示:建议把原下载安装程序先删除确保有足够的
存储空间
。
该答案来自
腾讯视频
官方网站