有账号,已付费,现在是想把视频下载到本地保存,获取到 m3u8 文件如下:
#EXTM3U</br>
#EXT-X-VERSION:3</br>
#EXT-X-MEDIA-SEQUENCE:0</br>
#EXT-X-ALLOW-CACHE:YES</br>
#EXT-X-KEY:METHOD=AES-128,URI="https://hls.videocc.net/f8f97d17d0/b/f8f97d17d0fb9c02969e6eca2f6a13eb_2.key",IV=0x6955c16d9422a4cf93633f5974ea84a0</br>
#EXT-X-TARGETDURATION:13</br>
#EXTINF:5.080000,</br>
https://ab-dts.videocc.net/f8f97d17d0/4/1592411664781/b/6a/13/eb_2/f8f97d17d0fb9c02969e6eca2f6a13eb_2_0.ts?pid=1604394927408X1704589&device=desktop</br>
#EXTINF:5.000000,</br>
https://ab-dts.videocc.net/f8f97d17d0/4/1592411664781/b/6a/13/eb_2/f8f97d17d0fb9c02969e6eca2f6a13eb_2_1.ts?pid=1604394927408X1704589&device=desktop</br>
。。。省略后面部分
我可以下载到 key 文件,然后要怎么操作?我把 m3u8 文件中的 key 换成本地路径:
#EXT-X-KEY:METHOD=AES-128,URI="./f8f97d17d0fb9c02969e6eca2f6a13eb_2.key",IV=0x6955c16d9422a4cf93633f5974ea84a0</br>
然后用 ffmpeg 下载成 mp4,如下:
ffmpeg -allowed_extensions ALL -protocol_whitelist "file,http,https,crypto,tcp,tls" -i f8f97d17d0fb9c02969e6eca2f6a13eb_2.m3u8 a.mp4
然后报错:
Error when loading first segment 'https://ab-dts.videocc.net/f8f97d17d0/4/1592411664781/b/6a/13/eb_2/f8f97d17d0fb9c02969e6eca2f6a13eb_2_0.ts?pid=1604394927408X1704589&device=desktop'
f8f97d17d0fb9c02969e6eca2f6a13eb_2.m3u8: Invalid data found when processing input
|  |      1fsq OP 看源代码有 https://player.polyv.net/script/player.js ,是用的保利威视加密的? | 
|  |      2chendy      2020-11-03 18:28:50 +08:00 录屏怎么样? | 
|      3flewsea      2020-11-03 18:55:54 +08:00 印象中他们用的加密是非标准的方式。需要自己去逆向 js 分析 | 
|  |      46J73U552K5UVij4R      2020-11-03 22:39:04 +08:00 via iPhone @fsq 这一家我之前试过,挺复杂的。但是应该可以,难道是技术升级了? | 
|  |      5yuzo555      2020-11-03 22:50:13 +08:00 F12 模拟手机客户端试试。 这种第三方视频平台加密一般很垃圾 | 
|  |      6learningman      2020-11-04 00:55:14 +08:00 有改 chromium 源码直接输出的,你找找 | 
|  |      7kajweb      2020-11-04 01:51:11 +08:00 录屏吧。 | 
|  |      8feast      2020-11-04 02:03:02 +08:00 可能是 HLS 需要特殊参数 | 
|  |      9zhw2590582      2020-11-04 07:43:50 +08:00 js 就能录屏,就几行代码就能实现,任何加密都是浮云 | 
|      10shenfu1991      2020-11-04 08:26:36 +08:00 via iPhone Chrome 插件就能下载,只要你能播放 | 
|  |      11hnbcinfo      2020-11-04 08:40:22 +08:00  1 我想起了,之前在蓝铅笔上报名的绘画班,因为没时间看直播,想着,下载下来看。试了好多方法,就是不行,用的就是楼主看的网站上的 videocc.net 的保利威视的视频方案,看过官网的文档,每段视频都是单独的加密方案,基本可以说是无解。 最后,我选择了录屏,简单写了个 Chrome 脚本去调用录屏软件进行录屏和保存,家里电脑开了一天多录完了。只要网络可以,不出现那种加载中的状态,录屏还是可以的。 | 
|      12annielong      2020-11-04 09:17:53 +08:00 一般有 key 有 vi 属于标准加密吧,见过一个视频网站才是真加密,不用 key 和 vi,直接把 ts 硬编码成 png 格式, | 
|      13Hansah      2020-11-04 09:21:55 +08:00 via Android 用安卓端的 UC 浏览器登录看看,自带下载功能 | 
|      16xinghen57      2020-11-04 09:54:30 +08:00 via iPhone ffmpeg 转录 | 
|      17oree      2020-11-04 11:02:06 +08:00 NETFLIX 如何录屏? | 
|  |      18shakaraka PRO | 
|  |      19IDAEngine      2020-11-04 13:26:14 +08:00 via iPhone 直接在底层下手,av 模块改一改 | 
|  |      20IDAEngine      2020-11-04 13:26:51 +08:00 via iPhone 把裸 h265/265 提取下来 | 
|  |      22yimity      2020-11-04 14:02:15 +08:00 | 
|  |      24liuze0109      2020-11-04 14:32:08 +08:00 downie 下载工具试过没? | 
|  |      25LeeSeoung      2020-11-04 14:56:30 +08:00 把返回体里的 ts 链接全部下载后按顺序拼接在一起就是了 | 
|  |      26hnbcinfo      2020-11-04 15:49:21 +08:00 @Rwing  @ixinshang 我不是直接 Chrome 录屏的,我自己不怎么会前端,所有我用了比较笨的方法。 1 、录屏软件,我用的 Captura,配置好开始和停止录屏的快捷键。 2 、开发了一个 windows 程序,超级简单,只用来接收请求,并发送全局模拟按键,通过快捷键调用录屏软件。 3 、我写了 chrome 插件判断每个视频的播放开始和结束,开始时,发送一个 http 请求给 windows 程序,视频播放结束时,发送一个 http 请求给 windows 程序,同时切换到下一个视频。 Captura 是开源的,本来想着在它的基础上开发一下的,后来还得读源码,放弃了,就用了这种曲线救国的方式,比较笨,但是开发的快啊,一个小时就能搞定。 | 
|  |      28Cy86      2020-11-04 15:54:27 +08:00 | 
|  |      29hnbcinfo      2020-11-04 15:54:30 +08:00 @hnbcinfo 同时还得处理下,如果模拟点击的方式切换视频会有退出全屏的问题,录屏起来就不好看了。 保利威视有文档,可以看看他们播放器的代码,很容易做到通过执行 js 切换视频。然后在播放页面,提前获取了视频的 Id,视频结束,直接切换即可。 而且保利威视的视频,支持跑马灯的文字水印,带有当前账户的信息。不过不是嵌入到视频里的,所有很容易去掉,记得在 chrome 插件里添加去掉水印的方法在录屏 | 
|      30annielong      2020-11-04 18:25:47 +08:00 @ungrown 不确定,以前有类似的是光改了扩展名,实际还是视频文件,下载后直接合并就行了,这个不行,下载下来查看文件头都是 png 的 | 
|  |      31riordanw      2020-11-04 18:41:24 +08:00 可以试下,用 VLC 播放 m3u8,然后存储。 | 
|  |      33TangMonk      2020-11-04 20:47:50 +08:00 via iPad 下载下来的 ts 用 AES-128 带上 key 解密就可以了,看样子没有偏移量。 | 
|  |      34TangMonk      2020-11-04 20:48:19 +08:00 via iPad 之前搞过小鹅通的,差不多的 | 
|      36zouguolvyi      2020-11-05 07:34:36 +08:00 chrome 插件 stream recorder 应该可以解决你的问题 | 
|  |      37mamahaha      2020-11-05 10:51:17 +08:00 这都是分段的同时再加密的,就算你把切片都下载下来也看不了,除非你能黑掉服务器找到他的密钥文件。老老实实录屏吧。 | 
|  |      38ttimasdf      2022-03-18 16:29:37 +08:00 key 的数据变换比较复杂,调试起来也需要一定技巧,但加密是标准的加密。 |