跳转到内容

❧ M3u8视频下载

1.获取m3u8文件

#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:5
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-KEY:METHOD=AES-128,URI="http://kds.bytedance.com/kds/api/v1/keys?source=jarvis&ak=62c67696efe8470664479b970102dfab",IV=0x00000000000000000000000000000000
#EXTINF:5.000000,
0.ts?auth_key=1765635703-ece09c3ac15340bfb275864fa8db148a-0-73437ea7c3e0a96292d8fa7eee68ce22
#EXTINF:5.000000,
1.ts?auth_key=1765635703-ece09c3ac15340bfb275864fa8db148a-0-e254a4751cb91e3f1747073bd115d631
#EXTINF:5.000000,

2.获取key和iv

EXT-X-KEY 字段可获取到加密方法,key的url,iv的值。

3.key解密

情况一:后端返回SecretKey

const SecretKey = "308620261b804012";
const uint8Array = new TextEncoder().encode(SecretKey); // 将密钥转换为Uint8Array
const key = Array.from(uint8Array, byte => byte.toString(16).padStart(2, '0')).join(''); // 将Uint8Array转换为16进制字符串

根据获取的key和iv,使用 N_m3u8DL 下载即可;