iOS头条视频地址解析播放

当我们从头条视频抓取视频播放地址的时候,通常返回的是一个web页面的URL,想要使用AVPlayerLayer来播放的时候肯定是不行的,然后我们需要去解析对应的webUrl来获取真实的播放地址。

下面以这个url为例;

http://www.365yg.com/a6484155127056826894/#mid=69636596635

使用AF get请求这个url,返回的数据是NSData类型,然后转换为NSString,

会是一大托html字符串下面这些东西,然后我们找关键信息,我们会发现能找到这个视频的id。

2AD02068-CCAA-430B-B71A-0EEBCE62FD9E.png

然后使用正则来找到这个videoId,


F52C8275-3FB7-41EA-A308-A9C89B5F917F.png
#define URL_VIDEO    @"/video/urls/v/1/toutiao/mp4/%@?r=%@"
#define HOST_VIDEO   @"http://i.snssdk.com"

然后拼接一下主要参数,[self getRandom]是生成一个随机16位数

使用crc32 生成一个加密数字,拼接完成之后直接打开这个地址或者使用AF请求下是个JSON格式的数据

image.png

然后使用网页打开这个网页,会返回一个json,


FED7391B-5AA9-477F-909C-FCF923EF75CE.png

这个main_url 对应的就是我们需要的真实播放地址,但是数据是加密的,使用Base64解密下得到真实地址 ,这个播放地址是有有效期的 暂时不知道多少,所以最好每次播放的都重新解析下

你可能感兴趣的:(iOS头条视频地址解析播放)