付费视频下载到本地,关于ts与m3u8文件下载后的复盘总结

国内在365投注 📅 2025-07-18 18:10:55 👤 admin 👁️ 4513 ❤️ 831
付费视频下载到本地,关于ts与m3u8文件下载后的复盘总结

目录

前言:求助插件You-GetFlash Video DownloaderVideo DownloadHelper

分析网络请求第一步第二步第三步来个小总结

如何处理加密key开始转视频m3u8dl工具youtu-dl 工具ffmpeg 根本地址

最后一步上传到云盘

前言:

一切的起因:因为某个同学在某斯上面的会员快要过期了,想把视频下载到本地观看。 我想这还不简单?愉快的接下了任务,接下来,我想我是笑不出来了,但是走过来还是值得。

求助插件

You-Get

会Python的应该都听说过you-get吧,就是支持大多数视频的下载 这里我直接放上开源地址:https://github.com/soimort/you-get B站的视频你想下载下来直接用这个多线程跑就行了。

Flash Video Downloader

一个在Chrome上的插件,不用说了没用。

Video DownloadHelper

一个在Firefox上的插件,第一次还检测到了 然后刷新页面,哦豁没了,逐渐开始变态起来~

分析网络请求

第一步

打开F12刷新network默认观察的是请求的先后顺序

我选择大小之后,随着视频的播放,逐渐产生新的文件 因为是大小倒序,0.ts,1.ts逐渐出现 那说明了这个视频的播放就是一个个这样的ts组成的

第二步

我接着去请教某位小透明,在他的带领下我明白了,可以找到一个m3u8的文件 这个文件的含义相当于整个视频的总指挥 他里面集合了所有的ts,以及如何加密,密钥来自哪里 那么如何找呢?

第三步

因为他这个涉及登录的,所以肯定会携带token等认证信息,注意留意这个 其次加载一个网页,首先会加载css,js,图片等先将整个网站的样子加载出来 随后就是js的渲染解码的问题,这个时候就会发出请求m3u8 所以根据waterfall来排序,拉到中间,就能发现上图。

进而他在里面说明了是AES-128加密 然后密钥对应的地址是URI中的 当然你直接访问肯定是不行的,自己造包又太麻烦 而网页能播放视频,说明密钥肯定也下发了 然后网站的js根据key和m3u8请求服务器并解密,前端就能观看到视频了

这里有个需要注意的地方,我下面单独说一下

来个小总结

网站是怎么播放视频的呢:

他是拆分成30秒一个的ts文件网站的js会去读取请求来的m3u8文件进而js会根据key解密直接请求m3u8和key是会被服务器拒绝的

综上: 我们要将m3u8和key拉取到本地 用本地的服务器给我们的工具给可以直接访问到的链接 然后我们就能得到我们想要的视频了

如何处理加密key

使用火狐浏览器

这点值得谷歌浏览器学习哈,自动转码

使用hackbar

有的火狐浏览器是不会自动转码的,如果只存在一行,可以直接复制 到hackbar里面的base64_encode拿到

如果存在换行怎么办?

burpsuit抓包 找到这个包的response到解码器里面解右键改包的curl命令,到控制台里面发包处理返回回来的二进制(没试过~)

最后生成key文件

你直接复制是没有用的,二进制当成字符串用~ 如下你会得到对应的key file_put_contents('./key', base64_decode('DQoNCtL+6IOzUNCrR/OBXiRkDek='));

开始转视频

m3u8dl工具

开源地址:https://github.com/nilaoda/N_m3u8DL-CLI 但是这个在这里不是特别好使

youtu-dl 工具

开源地址 : https://github.com/ytdl-org/youtube-dl 最后直接搞定!

ffmpeg 根本

下载地址:https://www.gyan.dev/ffmpeg/builds/

上面的建议都要加入环境变量 而我就比较懒 直接丢到site-pakage里面了事 注意:ffmpeg有很多阉割版,建议用上面的下载地址下载完成版

地址

还记得前面我们说过的,网站上的地址是要token认证的 而软件的使用是直接给个链接 加上有几点我们可以利用

m3u8文件是没有加密的ts文件是直接可以拿下来的

所以我们可以将m3u8拿到本地,给本地连接

这里直接提供几种方式:

XAMPP,PHPstudy等本地开个服务器,丢到里面 python -m http.server

用python搭建一个临时虚拟的服务器 给连接参考下: https://www.cnblogs.com/shenshangzz/p/8318143.html https://juejin.cn/s/python%20http%20server%E6%95%99%E7%A8%8B https://www.pythonf.cn/read/4681

白嫖图床

咳咳咳,小透明大佬的百宝箱中的东西 https://github.com/TransparentLC/free-img 这是个好玩意,大厂们也不差这点

最后一步

# 当前文件夹下打开cmd

$ youtu-dl http://127.0.0.1:8112/index.m3u8

上传到云盘

搞定!

相关养生推荐

淦是什么意思梗出处?
365打水账号怎么防止封号

淦是什么意思梗出处?

📅 07-02 👁️ 9343
搞机试验室
国内在365投注

搞机试验室

📅 07-12 👁️ 7130
城市观察
beat365官方入口素描网

城市观察

📅 07-09 👁️ 4760
解决光猫和路由器在断电重启后无法上网的问题
国内在365投注

解决光猫和路由器在断电重启后无法上网的问题

📅 07-15 👁️ 4777
1998年國際足協世界盃
国内在365投注

1998年國際足協世界盃

📅 07-08 👁️ 910
神秘商人服务器数量什么时候刷新
365打水账号怎么防止封号

神秘商人服务器数量什么时候刷新

📅 07-11 👁️ 6039