Python 爬虫进阶必备 | 某电影站视频采集遇到的加密参数逻辑分析
【摘要】 今日网站aHR0cHM6Ly96MS5tMTkwNy5jbi8/ang9JUU1JTkzJTg4JUU1JTg4JUE5JUMyJUI3JUU2JUIzJUEyJUU3JTg5JUI5JUU0JUI4JThFJUU1JUFGJTg2JUU1JUFFJUE0加密定位与分析分析的网站是一个电影播放站,有良心的是竟然没有多少广告,这个请求返回的内容里包含了m3u8的链接,m3u8大家应该都知道是啥...
今日网站
aHR0cHM6Ly96MS5tMTkwNy5jbi8/ang9JUU1JTkzJTg4JUU1JTg4JUE5JUMyJUI3JUU2JUIzJUEyJUU3JTg5JUI5JUU0JUI4JThFJUU1JUFGJTg2JUU1JUFFJUE0
加密定位与分析
分析的网站是一个电影播放站,有良心的是竟然没有多少广告,
这个请求返回的内容里包含了m3u8
的链接,m3u8
大家应该都知道是啥吧,我们获取到之后就可以解析出视频了。
所以我们需要的就是构造出这个请求链接,以及下面的几个参数
直接通过Initiator
调用栈分析
最后一个请求点击进去,可以看到
这不就是要分析的请求接口嘛
我们要分析的是z
、s1ig
、g
如上图基本就囊括了全部的参数逻辑
接下来一个一个看下
第一个是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
方法
这里的d
、f
、p
都是独立的方法,扣一下就可以了,得出结果之后又经过了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
的结果并用,
拼接
现在所有的逻辑都分析清楚了,直接开整
先是z
的逻辑
其实不扣也可以,就是个md5
然后直接在Python
里面开搞,请求就完事了
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)