本文针对网站视频进行解密合并下载,对M3U8加密的有通用性。
通过抓包发现此站M3U8是AES-128加密,有秘钥KEY
首先抓包(浏览器右键F12):
保存三个文件的地址:
M3U8地址:https://****/output/da58585133f6584f6b2465477bbe9fb0/index.m3u8?md5=64Pl9rULTNPfJ3P2NyGeWw&expires=1543119979
KEY:https://***/keys/Z5wauG0HPBZZrGMhYf0yBh8UFZq47Rr3F7mC2RIEpFaxWpebIiN0Cj31x0ICOu35.key
TS:https://***/output/da58585133f6584f6b2465477bbe9fb0/000.ts
找到M3U8文件和KEY文件,将这两个文件保存到本地,分别重名为index.m3u8,KEY文件重命名为key.txt。
更改KEY文件时会有上图的提示,点确定。
用记事本打开刚才下载的M3U8文件
文件最后是716.ts
打开迅雷,新建批量任务
https://***/output/da58585133f6584f6b2465477bbe9fb0/000.ts
把这个地址变成
https://***/output/da58585133f6584f6b2465477bbe9fb0/(*).ts
然后把这TS文件下载下来
打开index.m3u8文件
把URI=”https://***/keys/Z5wauG0HPBZZrGMhYf0yBh8UFZq47Rr3F7mC2RIEpFaxWpebIiN0Cj31x0ICOu35.key”
改成URI=”key.txt”
把index.m3u8 key.txt 下载的ts文件 ffmpeg.exe全部放到一个文件夹中,例如我放到D盘的TS文件夹中
打开命令行
输入盘符D:
进入TS目录
输入下面的命令
1 |
ffmpeg -i index.m3u8 -c copy new.mp4 |
合并速度取决电脑性能
合并完成
我们看一下效果吧
ffmpeg下载地址:FFmpeg.rar
2019年4月16日 at 上午7:23
http://ms.ggyypro.com/jd_m3u8/Q6_wzyPFd4IeBxSCVS22lg/1556830802/jd_hls/iphone/4407.mp4/index.m3u8?e=1556830802&st=rWQENkMeXSOIIHEGZ7GhNw
2019年2月20日 at 上午1:12
问下合并完后视频播放中间有一段放不了是什么情况,EIKI088这部.
2019年2月23日 at 上午9:26
下载的时候是不是漏了一段视频
2018年12月18日 at 下午4:15
这个方法好像不行啊,博主可以再试试
2018年12月18日 at 下午8:29
测试可以
2018年12月18日 at 下午8:38
你可以再看看,真的不行
2018年12月19日 at 下午2:09
真的可以
2018年12月15日 at 下午11:05
合并时如果报错如下
[hls,applehttp @ 000002175e02a180] Filename extension of ‘key.txt’ is not a common multimedia extension, blocked for security reasons.
可以加个allowed_extensions参数解决。
具体代码是 ffmpeg -allowed_extensions ALL -i index.m3u8 -c copy new.mp4
其实key文件也不用存成txt啊,.key可以正常用
2018年12月16日 at 下午5:35
感谢指正
2018年12月12日 at 下午7:24
這是什麽原因?
Filename extension of ‘key.txt’ is not a comm
on multimedia extension, blocked for security reasons.
If you wish to override this adjust allowed_extensions, you can set it to ‘ALL’
to allow all
Unable to open key file key.txt
[hls,applehttp @ 0000000000562500] Opening ‘crypto:000.ts’ for reading
[hls,applehttp @ 0000000000562500] Error when loading first segment ‘000.ts’
index.m3u8: Invalid data found when processing input
2018年12月12日 at 下午10:54
确定是按教程一步步操作的?
2018年12月12日 at 下午11:27
有,有下载index.m3u8,key.txt,ts档,怀疑是key.txt内容问题,想问一下你的key.txt里是什麽还有文件大小?
我的key.txt是16位元组
2018年12月13日 at 下午12:22
key文件不要打开,直接重命名。
2018年12月13日 at 下午1:00
不行,我給我的index,key文件你看一下(我下japonx的ATID-329)
链接: https://pan.baidu.com/s/1AmvJLHimwXQ3f5NzKNQapg 提取码: urf1
2018年12月14日 at 下午1:09
****.key文件不要打开,直接重命名即可,或者不用key文件,m3u8文件也不要修改直接运行命令ffmpeg -i index.m3u8 -c copy new.mp4 这样是用网络key,不过这个方法有时效性,也就是打开视频网页后要在1分钟内操作。
2018年12月15日 at 下午11:01
代码要这么写
ffmpeg -allowed_extensions ALL -i index.m3u8 -c copy new.mp4
参考https://stackoverflow.com/questions/44486404/ffmpeg-how-to-allow-a-file-extension
2018年12月15日 at 下午11:06
我记得我试过这个命令,还是有错误。
2018年12月12日 at 下午12:20
有没有能拉到服务器上再取回的办法?
2018年12月12日 at 下午2:48
用aria2可以
2018年12月12日 at 下午11:24
能教一下下载方法吗,可以只是单纯的下载,拖到本地再合并~
2018年12月13日 at 下午12:22
直接用迅雷下载,可以批量任务
2018年12月13日 at 下午1:05
主要想拉到服务器上,这边挂梯子下太慢了…
2018年12月11日 at 下午7:09
福利吧过来的:
按照你的方法,下载 avgle.com这个网站的视频时, m3u8文件可以下载,但是通过工具,或者直接使用链接下载.ts文件下载时,下载不了,直接访问ts文件的链接,显示403错误! 大佬帮忙看看!
2018年12月12日 at 上午11:39
等我有空了,我研究研究。估计是Cookie的问题
2018年12月9日 at 下午7:10
F12 再按ctrl+r之后在xhr栏里都是空白的
2018年12月10日 at 下午10:16
要播放视频
2018年12月9日 at 上午11:03
m3u8文件打不开或者是乱码是什么情况?
2018年12月9日 at 下午3:52
直接记事本右键打开就可以
2018年12月12日 at 下午9:40
我就是直接记事本打开的 结果是乱码。。。
2018年12月12日 at 下午10:53
重新下载再打开试试
2018年12月9日 at 上午1:23
FFmpeg不能运行
2018年12月9日 at 下午3:53
什么系统