爬虫之巧用BurpSuite获取m3u8视频真实mp4地址
本帖最后由 txq0211 于 2022-4-5 14:47 编辑帮别人下载视频,一看m3u8的,被分割成2MB,如果按照网上别的视频下载方式,100多段视频有点麻烦。
作为菜鸟,逆向学习有点难。
于是尝试着用BurpSuite抓抓包试试,果然发现了惊喜。
BurpSuite2022.2.2汉化和谐便携版本-多系统Windows Linux Mac免装(声明:这个工具有点刑,慎用,burp学得好,牢饭吃到饱)
此方法仅用于学习,不能用于其他用途。
于是,通过使用【代{过}{滤}理】和【重放器】,将post请求拦截再重放,发现了这个。
第三幅图,我们可以发现关键性的pre_view_url里面有个东东有点像视频下载链接,
但是没有链接的/,里面的%2F如果换成/倒是像极了下载地址,如是,把%2F替换成/,%3A替换成:
然后吧furl=后面的https开始那一段复制到迅雷,果然行。
可以直接解析出MP4视频,那m3u8哪有MP4方便。
post参数resourceIdInt可以从第一个post请求的返回值得到。
链接里面有一个关键词id,不同是视频只需替换id即可
于是,便有了。
(如有不当处,请大神指教)
import requests
import json
from tqdm import tqdm
data_id = {'id':'45bdd13e-82aa-11ea-a664-fa163e216734'}
url = 'http://114.116.94.253/sjjx/web/mslt/view'
href = 'http://114.116.94.253/dsideal_yy/sjjx/web/base/resourceInfo/view'
title = '%s.mp4'%json.loads(requests.post(url, data=data_id).text)["data"]["title"]
resource_id = json.loads(requests.post(url, data=data_id).text)["data"]["resource_id"]
mp4_url = json.loads(requests.post(href, data={'resourceIdInt':resource_id}).text)["list"]["pre_view_url"].split('furl=').replace('%3A',':').replace('%2F','/')
print(title)
print(mp4_url)
response = requests.get(mp4_url, stream=True)
with open(title,'wb') as f:
for i in tqdm(response.iter_content(chunk_size=1024)):
f.write(i) 理想的海洋 发表于 2022-4-6 11:04
初学python我的mac电脑 复制你这段代码 提示只读无法下载 能指导一下mac电脑怎么自定义下载视频的 ...
桌面新建一个文件夹,然后把py文件保存到那个文件夹下,py文件在哪视频保存在哪。你要自定义存储路径就得去学习下os模块了 理想的海洋 发表于 2022-4-6 12:17
可以的修改一下py的路径就可以在当前路径存储文件 好好学习你的帖子跟着大佬学爬虫
import os
# 创建文件夹
if not os.path.exists('新路径'):
os.mkdir('新路径') 感谢你支持! hecoter 发表于 2022-4-5 13:47
直接就是MP4?
m3u8可以通过 https://www.52pojie.cn/thread-1616162-1-1.html 下载
直接解析返回的mp4视频 感谢 收藏一下下 很想用,如果有软件就更完美了 就1个id?
ciker_li 发表于 2022-4-5 15:55
就1个id?
链接里面关键的是ID,这个网站其他视频的ID也可以的 搞一个批量下载MP3的呗。
小补 发表于 2022-4-5 16:42
搞一个批量下载MP3的呗。
提供下想法?
哪个网站?
一般网站的不难。 1788 发表于 2022-4-5 15:19
很想用,如果有软件就更完美了
我这个只是别人学校的。上午看有人整了个帖子,他做出优酷的小工具,我试着用BurpSuite抓了下,能抓能解析mp4,只是分段了,有些技术问题我还没处理好,要不你先试试这个。
获取优酷视频真实m3u8播放链接,成品来了