python hls m3u8_利用python批量爬取央视视频链接

本文介绍了如何使用Python批量爬取央视视频的m3u8链接。通过F12抓包分析m3u8和ts文件,理解其结构,然后利用pyautogui自动化点击配合charles抓包,最终成功获取300多个视频的m3u8链接。
摘要由CSDN通过智能技术生成

利用python批量爬取央视视频链接

目标网页:https://v.cctv.com/sousuo/index.shtml?title=%E6%96%B0%E5%86%A0

v2-e778d8d4422d54f240453da6cfbd3327_b.jpg

第一次尝试:F12抓包当前网页

结果……发现这里没有视频数据,只有这12个视频的介绍

v2-3908b616df53358b019a435082f19c53_b.jpg

===================我是漂亮的分割线=====================

打开第一个视频看看,一样F12抓包

可以着重观察包的Type和Size,size越大越有可能是视频文件

v2-93bcf21446bb35d6ef0c119f2bc09c11_b.jpg

找到了m3u8目录文件和ts视频文件,m3u8目录文件用来指向ts视频文件

M3U8是什么​www.jianshu.com
v2-ce58257014e74cac8874ba49443a8aed_180x120.jpg
TS文件_百度百科​baike.baidu.com <
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 很高兴为你提供帮助。你可以使用python-m3u8库来实现m3u8下载器,它是一个支持HTTP Live Streaming(HLS)的Python库,可以让你轻松解析m3u8文件并下载其中的媒体文件。 ### 回答2: 当然可以为您编写一个简单的m3u8下载器,使用Python的requests库和m3u8库。 首先,您需要安装这两个库。您可以使用pip命令在命令行中安装它们: ``` pip install requests m3u8 ``` 然后,您可以使用以下代码编写m3u8下载器: ```python import requests from m3u8 import M3U8 def download_m3u8(url, output_file): # 发送GET请求获取m3u8文件内容 response = requests.get(url) m3u8_content = response.text # 解析m3u8文件 m3u8 = M3U8(m3u8_content, base_uri=response.url) # 创建一个空的输出文件 with open(output_file, 'wb') as f: # 遍历所有的分片 for segment in m3u8.segments: segment_url = segment.absolute_uri # 发送GET请求获取分片内容 response = requests.get(segment_url) # 将分片内容写入输出文件 f.write(response.content) print('下载完成。') # 测试下载器 url = 'https://example.com/video.m3u8' # 替换为实际的m3u8文件URL output_file = 'output.ts' # 替换为您希望保存的输出文件名 download_m3u8(url, output_file) ``` 上述代码会请求给定的m3u8文件URL,解析其中的分片信息,并逐个下载分片内容保存到输出文件中。 请注意,这只是一个简单的示例,并未考虑m3u8文件中可能存在的保护、加密或压缩等情况。在实际使用中,可能需要根据具体情况进行适当的处理和优化。 希望这可以帮到您!如有其他问题,请随时提问。 ### 回答3: 当然可以!下面是一个简单的Python脚本,可以用来下载m3u8视频文件。 ```python import requests def download(url): response = requests.get(url) file_name = url.split('/')[-1] with open(file_name, 'wb') as file: file.write(response.content) print('文件下载完成!') def main(): m3u8_url = input('请输入m3u8视频的URL地址:') download(m3u8_url) if __name__ == '__main__': main() ``` 使用方法: 1. 将上述代码保存为一个Python脚本文件,例如 "m3u8_downloader.py"。 2. 打开终端或命令提示符窗口,并进入脚本文件所在的目录。 3. 运行脚本文件:在终端或命令提示符中输入 "python m3u8_downloader.py"。 4. 脚本会提示你输入m3u8视频的URL地址,输入完毕后按回车键。 5. 脚本会自动下载m3u8视频文件,并保存在当前目录下。 请注意,这只是一个简单的示例代码,可能无法适用于所有情况。在实际使用中,你可能还需要处理一些特殊情况,例如视频的分片下载、合并等。但这个代码可以作为一个起点,帮助你开始编写一个更复杂的m3u8下载器。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值