seeyou_shj 发表于 2021-3-24 09:42

记录一次网站视频分析过程,附主要代码

昨天无事,发了一个西瓜视频的抓包过程分析。今天一看,移动到“福利经验区”了。没意思。今天继续发一个其他网站的视频分析,也是浏览器抓包并分析的过程,同时附上用python直接通过链接获取视频的方法,希望能在这里站住脚。

闲话不多说,直接开搞。

这次选取的视频网站比较简单,地址如下:

http://www.xjxsjyy.com/xp/dieyingzhongzhong5-1-1.html

还是老一套,直接浏览器打开网址,按F12打开开发人员工具。查找视频播放的位置:



利用python获取当前网址的数据:

>>> url = "http://www.xjxsjyy.com/xp/dieyingzhongzhong5-1-1.html"
>>> msg = requests.get(url,headers=headers,timeout=20)
>>> msg.encoding
'utf-8'      #获取网址返回源码的编码格式
>>> chardet.detect(msg.content)
{'encoding': 'utf-8', 'confidence': 0.99, 'language': ''}   #检查网址返回源码的编码格式,看看是否与默认编码一致。如果不一致则替换
>>> m = msg.text

好了,现在已经获取到返回数据,开始查找视频位置对应的源码:

>>> m.find("<video class=")
-1

没找到?那就再从浏览器中查找。继续F12:



可以看到“index.m3u8”字样。ok,再去获取的源码中寻找:

>>> m.find("player_data")
11685   #ok,找到了。
>>> m
'player_data={"flag":"play","encrypt":0,"trysee":0,"points":0,"link":"\\/xp\\/dieyingzhongzhong5-1-1.html","link_next":"","link_pre":"","url":"https:\\/\\/qingsong.cc-zui.com\\/20170903\\/aSRyJZCO\\/index.m3u8","url_next":"","from":"zuidam3u8","server":"no","note":""}'   #数据没问题
>>> exec(m)
>>> player_data['url'].replace("\\/","/")
'https://qingsong.cc-zui.com/20170903/aSRyJZCO/index.m3u8'   #数据没问题

换地址重新获取数据:

>>> msg = requests.get(player_data['url'].replace("\\/","/"),headers=headers,timeout=20)
>>> msg.text
'#EXTM3U\n#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=600000,RESOLUTION=720x406\n600kb/hls/index.m3u8'

原来是指向另一个m3u8文件。好吧,继续获取数据:

>>> url = player_data['url'].replace("\\/","/")
>>> msg = requests.get(url[:url.rfind("/")+1]+msg.text,headers=headers,timeout=20)
>>> msg.text[:200]
'#EXTM3U\n#EXT-X-VERSION:3\n#EXT-X-TARGETDURATION:10\n#EXT-X-MEDIA-SEQUENCE:0\n#EXTINF:1.400000,\n8XHKU3zx4542000.ts\n#EXTINF:9.240000,\n8XHKU3zx4542001.ts\n#EXTINF:3.000000,\n8XHKU3zx4542002.ts\n#EXTINF:10.0000'

这次没问题了,获取到一系列*.ts文件名称。剩下的我就不用多说了吧?直接爬取下来所有的ts文件,然后用ffmpeg合并。合并方法我已经在上一篇文章中说过了,这里不再赘述。


打字不易,免费评分给点呗?{:1_937:} {:1_937:} {:1_937:}

又要取名字 发表于 2021-3-24 09:47

红蓝黄 发表于 2021-3-24 09:50

感谢大佬的分析

seeyou_shj 发表于 2021-3-24 09:53

又要取名字 发表于 2021-3-24 09:47
猫抓会更省事儿

毕竟是别人的软件,谁知道毛抓里面有什么代码…………说不定还藏着暗门什么的……再说,我也是无聊了,随便发点东西 :lol

zyr2017 发表于 2021-3-24 10:02

感谢楼主分享

ciker_li 发表于 2021-3-24 10:36

感谢分享

nullable 发表于 2021-3-24 12:15

今天的分已经给了,感谢分享,明天来给热心

laobj 发表于 2022-5-17 10:18

感谢分享教程
页: [1]
查看完整版本: 记录一次网站视频分析过程,附主要代码