Python 爬虫进阶必备 | 某电影站视频采集加密参数逻辑分析

点击上方“咸鱼学Python”,选择“加为星标”

第一时间关注Python技术干货!

今日网站

aHR0cHM6Ly96MS5tMTkwNy5jbi8/ang9JUU1JTkzJTg4JUU1JTg4JUE5JUMyJUI3JUU2JUIzJUEyJUU3JTg5JUI5JUU0JUI4JThFJUU1JUFGJTg2JUU1JUFFJUE0

加密定位与分析

分析的网站是一个电影播放站,有良心的是竟然没有多少广告,

Python 爬虫进阶必备 | 某电影站视频采集加密参数逻辑分析_第1张图片

这个请求返回的内容里包含了m3u8的链接,m3u8大家应该都知道是啥吧,我们获取到之后就可以解析出视频了。

所以我们需要的就是构造出这个请求链接,以及下面的几个参数

Python 爬虫进阶必备 | 某电影站视频采集加密参数逻辑分析_第2张图片

直接通过Initiator调用栈分析

Python 爬虫进阶必备 | 某电影站视频采集加密参数逻辑分析_第3张图片

最后一个请求点击进去,可以看到

Python 爬虫进阶必备 | 某电影站视频采集加密参数逻辑分析_第4张图片

这不就是要分析的请求接口嘛

我们要分析的是zs1igg

Python 爬虫进阶必备 | 某电影站视频采集加密参数逻辑分析_第5张图片

如上图基本就囊括了全部的参数逻辑

接下来一个一个看下

第一个是z,上面一整串的逗号表达式

c = new Date
l = c.getTime()
u = 6e4 * c.getTimezoneOffset()
d = l + u + 36e5 * 8
m = new Date(d)
p = (p = m).getDate() + 9 + 9 ^ 10
p = (p = Et()(String(p))).substring(0, 10)
p = Et()(p)

看了下都和时间戳有关,取完时间戳之后经过了Et方法然后得出了p的值

打上断点追进去,可以看到如下逻辑

先是Et方法

Python 爬虫进阶必备 | 某电影站视频采集加密参数逻辑分析_第6张图片

这里的dfp都是独立的方法,扣一下就可以了,得出结果之后又经过了m方法

以上方法的出结果之后取前 10 位,然后再传入Et方法得出最后z的值

s1ig的值是f

c = new Date
l = c.getTime()
u = 6e4 * c.getTimezoneOffset()
d = l + u + 36e5 * 8
m = new Date(d)
f = m.getDay() + 11397

这个完全就是时间戳的操作,之后的g的逻辑取是fe.getAll的结果并用,拼接

Python 爬虫进阶必备 | 某电影站视频采集加密参数逻辑分析_第7张图片

现在所有的逻辑都分析清楚了,直接开整

先是z的逻辑

Python 爬虫进阶必备 | 某电影站视频采集加密参数逻辑分析_第8张图片

其实不扣也可以,就是个md5

然后直接在Python里面开搞,请求就完事了


对了,看完记得一键四连,这个对我真的很重要。

你可能感兴趣的