下载m3u8视频,下载小电影,破解,下载,以及整合
:怎么说呢,一直想写一个下载小电影的程序,之前搞过爬虫,只是看到过m3u8的文件,
近日有时间,心血来潮想搞一下,可是现在竟然加密了,是我out了,还是技术发展太快。
话不多说,直接上思路:
1 读取m3u8文件,给他标记上型号 2 根据标记,然后下载,并以标记给文件命名, 3 然后合并视频 4 操作说明: 5 1.需要自己去下载m3u8文件,命名:index.m3u8 6 2.自己去找密钥 ,下载的时候会遇到密钥,自己下载函数里面去改 7 key = "fad2a57ccb9deefc"
代码奉上:有本事就留个脚印,没有本事就算了,因为我已经把你们能对我的所有可见操作都关闭了。

from concurrent.futures import ThreadPoolExecutor from Crypto.Cipher import AES import requests,os,uuid # 合并文件 def merge(): tmp = [] for root, dirs, files in os.walk("video/"): for f in files: if f.split(".", 1)[1] == "ts": tmp.append(int(f.split(".", 1)[0])) tmp.sort() for i in range(len(tmp)): tmp[i] = f"{tmp[i]}.ts" shell_str = '+'.join(tmp) shell_str = 'copy /b ' + shell_str + ' ' + "0.ts" os.chdir(os.path.join(os.getcwd(), "video")) os.system(shell_str) # 接下来复制,并且转换成MP4 shell_str = f"copy /b 0.ts {uuid.uuid1()}.mp4" os.system(shell_str) os.system('del /Q *.ts') print("整合完毕,快去看吧") def downVideo(obj,key=None): print(f"正在下载第{obj['num']}") url = obj["url"] res = requests.get(url) key = "fad2a57ccb9deefc".encode("utf-8") cryptor = AES.new(key, AES.MODE_CBC, b'qqqqqqqqqqqqqqqq') with open(f"video/{obj['num']}.ts",'ab')as fp: fp.write(cryptor.decrypt(res.content)) def start(file_src="index.m3u8"): # 创建目录 if not os.path.isdir("video"): os.mkdir("video") file_src = "index.m3u8" arr = [] with open(file_src)as f: index = 1 for line in f.readlines(): if "#" not in line: obj = {} obj["url"] = line.replace("\n", "") obj["num"] = index index = index + 1 arr.append(obj) return arr if __name__ == "__main__": # 准备工作 arr = start() # 利用线程池 下载视频 tps = ThreadPoolExecutor(10) # 最大线程数 for obj in arr: tps.submit(downVideo, obj) tps.shutdown() # 下载完毕自动整合数据 merge()
-----------------------------------------------------------------------------------------------------------------------------------------
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义