很多人公布的视频解析网址
在下面可找到一堆
https://bbs.ckplayer.com/forum.php?mod=forumdisplay&fid=40
是否如他们所说的都是直解?其实有些是有些不是。
我挑了一个简单的来看看。看我们怎么盗取它接口的解析
http://jx.mba98.com/?url=
然后找一批电影的页面链接
腾讯:https://v.qq.com/x/cover/5hji3owg0m5yypd.html
爱奇艺:https://www.iqiyi.com/v_19rv85pxx4.html
芒果TV:https://www.mgtv.com/b/330397/6814767.html
优酷:https://v.youku.com/v_show/id_XNDQyMDk0NjUwNA==.html
接下来就是主角登场Fiddler
当然用浏览器自带的调试器也是可以的。我这里用习惯了Fiddler
提交腾讯的截获的主要数据如下
- POST http://jx.mba98.com/api.php HTTP/1.1
- Host: jx.mba98.com
- User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:70.0) Gecko/20100101 Firefox/70.0
- Accept: application/json, text/javascript, */*; q=0.01
- Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
- Accept-Encoding: gzip, deflate
- Content-Type: application/x-www-form-urlencoded; charset=UTF-8
- X-Requested-With: XMLHttpRequest
- Content-Length: 183
- Origin: http://jx.mba98.com
- Connection: keep-alive
- Referer: http://jx.mba98.com/?url=https://v.qq.com/x/cover/5hji3owg0m5yypd.html
- Cookie: UM_distinctid=16e4a834db71e0-0e408b413bff52-4c302b7a-1fa400-16e4a834db8363; CNZZDATA1277857192=341801606-1573206750-%7C1573206750
-
- url=https%3A%2F%2Fv.qq.com%2Fx%2Fcover%2F5hji3owg0m5yypd%2Fz0022k9ma4m.html&referer=&ref=0&time=1573209740&type=&other=aHR0cHM6Ly92LnFxLmNvbS94L2NvdmVyLzVoamkzb3dnMG01eXlwZC5odG1s&lg=
接口返回的数据为
- HTTP/1.1 200 OK
- Server: openresty
- Content-Type: text/html; charset=utf-8
- Connection: keep-alive
- Vary: Accept-Encoding
- X-Powered-By: PHP/5.6.40
- Content-Length: 321
-
- {"player":"dplayer","cache":"pptv","code":200,"success":1,"type":"mp4","url":"https:\/\/yfcdn.vod.pptv.com\/a121a266fe9da1ed22e068f5681c8004.mp4?type=client.download&w=1&k=37bcc34e8b7d87a4a7f08fef3eea24b3-637b-1573224296%26bppcataid%3D1","hiddenreferer":"true","msg":"\u6570\u636e\u6b63\u5e38","title":"PPTV\u89c6\u9891"}
返回的缺少PPTV的播放源。这说明腾讯跟跟PPTV都又上线这电影。网址后台经过了对比。只返回了PPTV,而没有再去获取腾讯的源。
这样做是为了速度,一个是为了用户多起来,频繁的请求造成他们后台账号给封,因为获取VIP视频,他们后台也需要一个开通了VIP的账号带COOKIE去获取
这里也我们看到other其实是经过了base64编码,time是时间戳。接口并没有其他算法来预防我们去盗取它的接口。
aHR0cHM6Ly92LnFxLmNvbS94L2NvdmVyLzVoamkzb3dnMG01eXlwZC5odG1s
BASE64解码为
https://v.qq.com/x/cover/5hji3owg0m5yypd.html
下面我们就分别用易语言验证并用PHP盗取并代理它这接口
易语言版本
可以看到。连HEADER头部都没有检测。我们直接构造一个POST包就可以调用了。
PHP版本
- <?php
-
- $url = $_GET['url'];
-
- //构造POST数据
- $post_data = "url=" . $url . "&referer=&ref=0&time=" . time() . "&type=&other=" . base64_encode($url);
-
- //使用CURL提交数据
- $data = request_by_curl("http://jx.mba98.com/api.php",$post_data);
-
- //JSON格式数据
-
- //如果不需要301跳转,就直接Echo输入播放地址
- //echo $ResultDesc->url;
-
- //重定向到页面地址
- if($ResultDesc->url != ""){
- exit;
- }
-
-
- //下面是CURL的POST
- function request_by_curl($remote_server, $post_string) {
-
- //echo $data;
- return $data;
-
- }
- //下面是CURL的GET
- function get_by_curl($remote_server) {
-
- return $data;
-
- }
- ?>
接口地址:http://hk.kjol.cc/mba98.php?url=
测试地址:http://hk.kjol.cc/mba98.php?url=https://v.qq.com/x/cover/5hji3owg0m5yypd.html
感谢版主的付出,可以加我一下Q跟您联系吗, Q1226199682
你好 我有一个解析 抓包能看看到输出m3u8格式文件,能不能帮我指导一下怎么获取到这个文件地址
我的q 65207513
大佬你好,请加我Q 528245715
有偿 请教你一个问题,谢谢
您有qq吗?能联系您吗?
直接留你Q,我会联系你
感谢版主的付出,谢谢
学习了,在版主这里学到不少东西,希望版主有空写个如何解密这些解析站点的加密的数据,比如post提交需要的token、keep、key等。
从简单的一步步来吧,有tonken,key之类加密数据的。一般JS文件对调试有判断和混淆加密等。有时也未必能弄出来。