如何用Python对m3u8文件进行深入而全面的处理?
- 内容介绍
- 文章标签
- 相关推荐
本文共计555个文字,预计阅读时间需要3分钟。
前言:最近一直在关注Python方面的知识,突然对Python处理视频内容产生了浓厚的兴趣。在百度一下,看了网上的一些方法,根据兴趣尝试下载了一个m3u8文件看看。实际案例:作为一个学习者,尝试从网上下载一个m3u8文件看看。
前言:
最近一直在看python方面的知识,突然对python对视频如何处理非常感兴趣,于是百度一下,看看网上的方法,根据兴趣,试着从网上下载一个m3u8的实例看看。
本实例为个人学习使用,试着用了线程的方法。
一、由于时间紧,没有直接从网页中获取m3u8网址,而是把m3u8地址放到excel表格中。
二、从表格中读取m3u8地址,从而获取视频真实地址进行下载。
一、多任务异步处理
二、普通顺序处理:
# coding:utf-8import requestsimport refrom openpyxl import load_workbookheaders = { "User-Agent": "Mozilla/5.0(Windows NT 6.1;WOW64) AppleWebKit/537.36(KABUL, like Gecko) " "Chrome/86.0.4240.198Safari/537.36 " }wk = load_workbook(r"E:\project\project03\m3u8 - 副本 (2).xlsx")sheet = wk.activefor i, j in zip(sheet["A"], sheet["B"]): # print(j.value) print(f"正在下载{i.value}集", end=" ") resp = requests.get(j.value, headers=headers) data = resp.text # print(data) indexs_list = re.findall(r'https(.*?).ts', data) for k in indexs_list: ts_url = "https" + k + ".ts" res = requests.get(ts_url, headers=headers) data = res.content with open(f"{i.value}.mp4", "ab+") as f: f.write(data) f.flush() print("下载完毕")wk.close()本文共计555个文字,预计阅读时间需要3分钟。
前言:最近一直在关注Python方面的知识,突然对Python处理视频内容产生了浓厚的兴趣。在百度一下,看了网上的一些方法,根据兴趣尝试下载了一个m3u8文件看看。实际案例:作为一个学习者,尝试从网上下载一个m3u8文件看看。
前言:
最近一直在看python方面的知识,突然对python对视频如何处理非常感兴趣,于是百度一下,看看网上的方法,根据兴趣,试着从网上下载一个m3u8的实例看看。
本实例为个人学习使用,试着用了线程的方法。
一、由于时间紧,没有直接从网页中获取m3u8网址,而是把m3u8地址放到excel表格中。
二、从表格中读取m3u8地址,从而获取视频真实地址进行下载。
一、多任务异步处理
二、普通顺序处理:
# coding:utf-8import requestsimport refrom openpyxl import load_workbookheaders = { "User-Agent": "Mozilla/5.0(Windows NT 6.1;WOW64) AppleWebKit/537.36(KABUL, like Gecko) " "Chrome/86.0.4240.198Safari/537.36 " }wk = load_workbook(r"E:\project\project03\m3u8 - 副本 (2).xlsx")sheet = wk.activefor i, j in zip(sheet["A"], sheet["B"]): # print(j.value) print(f"正在下载{i.value}集", end=" ") resp = requests.get(j.value, headers=headers) data = resp.text # print(data) indexs_list = re.findall(r'https(.*?).ts', data) for k in indexs_list: ts_url = "https" + k + ".ts" res = requests.get(ts_url, headers=headers) data = res.content with open(f"{i.value}.mp4", "ab+") as f: f.write(data) f.flush() print("下载完毕")wk.close()
