M3U8批量下载工具是一款可以帮助用户下载网页中M3U8视频的下载工具,由于M3U8视频采用了把视频分割成很多块进行传播的原理,所以传统工具很难下载M3U8视频,小编这分享的这款工具亲测可用,相信你一定会喜欢的,已经更新了哦!
M3U8下载工具特点:
- 使用Aria2作为下载引擎,避免网络波动导致下载卡死
- 允许插件接管部分步骤,以兼容不同加密的处理
- 提供丰富的选项以供自定义
- 针对本地缓存优化,可快速合并浏览器缓存
M3U8下载工具使用说明:
选项解释
选项名称 |
解释 |
导入配置 |
批量下载使用 |
修改同时下载数 |
修改同时下载的分片数量,以提高下载速度(默认为3) |
修改重试次数 |
设置分片下载失败后的重试次数,失败次数超过则任务失败(默认为3) |
修改连接超时 |
设置请求建立连接的超时时间,(默认为0,不限制) |
更改Aria2配置 |
如需更改Aria2配置,请在此处更改。不要直接修改配置文件 |
自定义协议头 |
如果网站会验证UA、cookie等协议头内容时,可在此自定义(RAW格式,请不要添加HOST) |
分片忽略失败 |
当下载失败次数超过重试次数时,会忽略当前分片继续接下来的任务 |
启用数据校验 |
下载多次数据进行比对,如两次下载不一致则继续下载,直到出现相同分片为止 |
强制使用内置下载 |
某些网站会屏蔽aria2的请求,可使用内置的curl继续下载(aria2启动失败时默认勾选) |
手动选择码流 |
如m3u8内存在多种清晰度,且不希望下载最高,请勾选 |
封装方式 |
可选mp4、flv、ts、raw(二进制拼接)、禁用合并(仅下载分片并解密) |
启用预合并 |
DIS标记之间的分片会使用二进制拼合,默认勾选 |
禁用concat方式 |
此方式会在识别为非ts格式以及存在DISCONTINUITY标签时使用,勾选后将改为直接拼接 |
保留缓存 |
勾选后将不清理下载的分片文件 |
启用队列备份 |
备份队列,防止意外情况下丢失下载列表,备份文件位于运行目录下backup |
禁用网络状态识别 |
工具带有断网暂停功能。如感觉影响到使用,请选中此项 |
禁用分片有效性校验 |
工具下载首分片后会校验此分片是否正确,如认为工具识别不正确可勾选此项忽略 |
解密方式 |
CBC/ECB/不解密 可选,默认CBC |
如何调用
EXE调用
运行下载器时传入配置文件的绝对路径
如:m3u8.exe D:\1.txt
http方式(推送)
参数 |
内容 |
说明 |
链接 |
http://127.0.0.1:端口号/ |
端口号默认为8787,如已被占用会顺延 |
请求方式 |
POST |
请求参数(模式1) |
data=base64编码后的配置内容 |
GBK编码,勿使用UTF-8 |
请求参数(模式2) |
data=配置内容,type=2 |
推荐JSON格式请求。会根据请求方式自动判断编码 |
注:使用此方式时下载器需已启动,请求成功会响应json
此方式提供易语言的模块以方便推送(需E2EE互联网服务器套件2.7.2版本及以上)
http方式(查询)
名称 |
内容 |
说明 |
链接 |
http://127.0.0.1:端口号/info |
端口号默认为8787,如已被占用会顺延 |
查询 |
无参数 |
- |
查询(含失败列表) |
fail-1 |
- |
清空列表(执行列表) |
control-1;type-1 |
正在执行的任务不会被清理 |
清空列表(失败列表) |
control-1;type-2 |
- |
返回结果 |
解释 |
queueTotal |
剩余任务数 |
queueTotalReal |
剩余任务数(去除#命令任务) |
failTotal |
失败任务数 |
failureList |
失败列表详情 |
executing |
正在执行的任务 |
->name |
任务名 |
->url |
链接 |
->total |
总分片数 |
->remain |
剩余分片数 |
ver |
当前下载器版本 |
配置文件结构
配置文件格式
名称(或参数名),链接(或参数值)、一行一条、英文逗号分割。注:参数任务为单独一条任务,换行需使用\r\n
例如
希望将目录更改为D盘,下载2个文件后改为E盘,则配置内容应是
复制代码 隐藏代码
#OUT,D:\
第一个文件名,第一个链接
第二个文件名,第二个链接
#OUT,E:\
第三个文件名,第三个链接
可选参数
参数项(需使用大写) |
解释 |
#HEAD |
自定义协议头,需base64编码 |
#OUT |
指定输出目录,需绝对路径 |
#NFAIL |
分片忽略失败,1为启用 |
#CLOSE |
完成后关机,1为启用 |
#CHECK |
启用数据校验,1为启用 |
#KEY |
自定义key,仅对下一行任务生效,可使用hex或base64 |
#CACHE |
保留缓存,1为启用 |
#NKEY |
忽略KEY标签,1为启用 |
#NETCHECK |
禁用网络状态识别,1为启用 |
#NTSCHECK |
禁用分片有效性校验,1为启用 |
#IDOWN |
使用内置下载,1为启用 |
#NCONCAT |
禁用concat方式,1为启用 |
#AGENT |
设置代{过}{滤}理 |
#FORMAT |
封装格式,可选参数为:ts,raw,mp4,flv,null(禁用合并) |
#DECMETHOD |
解密方式,可选参数为:ecb,cbc,null(禁用解密) |
合并助手
为方便某些用户手工合并的需求,增加合并助手的功能
使用方式
将分片全选后拖入后,使用自动排序或手工拖拽排序后,填入IV(可空),拖入或手工填入key(支持base64或hex或原文),点击添加即可
使用中可能遇到的问题
key无效或下载失败
需自行逆向,获取到算法后可编写插件或导入原始key以实现批量下载
提示相对链接
使用写字板(或其他第三方文本编辑器)打开m3u8文件,在文件第一行后新增一行,#BASEURL:m3u8所在目录(以/结尾)
,以指定baseurl
例如m3u8链接为http://111.com/123/1.m3u8?a=123
,则应添加#BASEURL:http://111.com/123/
引用本地文件
直接替换链接即可,需使用绝对路径,路径前需加file@以指定为本地文件
key允许使用base64:[BASE64编码后的key]
的格式在文件内引用
将M3U8内容带入配置文件
1、构造JSON(参数为:data-m3u8内容;baseurl-文件链接所在目录,用于解决相对链接问题,以/结尾,可省略)
2、将json文本BASE64编码(需GBK)
3、加上前缀base64:
作为配置中的链接即可
例如:名称,base64:eyJkYXRhIjoiI0VYVE0zVSJ9
合并浏览器缓存
将m3u8文件与ts以及key(如果有)放在一起,将m3u8拖入即可,工具会自动判断路径
小技巧
将文件夹拖入->将文件夹目录设为下载目录
将16字节的文件拖入->将拖入文件设置为key
将key(HEX/base64/原文)填入链接框,文件名框留空,点添加 -> 设置key
将文件夹路径填入链接框,文件名框留空,点添加 -> 设置下载目录