• 请不要在回答技术问题时复制粘贴 AI 生成的内容
MisterQ
V2EX  ›  程序员

怎么下载付费的加密视频(有已付费的账号)

  •  
  •   MisterQ · Nov 3, 2020 · 10508 views
    This topic created in 2192 days ago, the information mentioned may be changed or developed.

    有账号,已付费,现在是想把视频下载到本地保存,获取到 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
    
    38 replies  •  2022-03-18 16:29:37 +08:00
    MisterQ
    MisterQ
    OP
    Nov 3, 2020
    1
    看源代码有 https://player.polyv.net/script/player.js ,是用的保利威视加密的?
    chendy
    chendy
    Nov 3, 2020
    2
    录屏怎么样?
    flewsea
    flewsea
    Nov 3, 2020
    3
    印象中他们用的加密是非标准的方式。需要自己去逆向 js 分析
    6J73U552K5UVij4R
    6J73U552K5UVij4R
    Nov 3, 2020 via iPhone
    4
    @fsq 这一家我之前试过,挺复杂的。但是应该可以,难道是技术升级了?
    yuzo555
    yuzo555
    Nov 3, 2020
    5
    F12 模拟手机客户端试试。
    这种第三方视频平台加密一般很垃圾
    learningman
    learningman
    Nov 4, 2020
    6
    有改 chromium 源码直接输出的,你找找
    kajweb
    kajweb
    Nov 4, 2020
    7
    录屏吧。
    feast
    feast
    Nov 4, 2020
    8
    可能是 HLS 需要特殊参数
    zhw2590582
    zhw2590582
    Nov 4, 2020
    9
    js 就能录屏,就几行代码就能实现,任何加密都是浮云
    shenfu1991
    shenfu1991
    Nov 4, 2020 via iPhone
    10
    Chrome 插件就能下载,只要你能播放
    hnbcinfo
    hnbcinfo
    Nov 4, 2020❤️1
    11
    我想起了,之前在蓝铅笔上报名的绘画班,因为没时间看直播,想着,下载下来看。试了好多方法,就是不行,用的就是楼主看的网站上的 videocc.net 的保利威视的视频方案,看过官网的文档,每段视频都是单独的加密方案,基本可以说是无解。

    最后,我选择了录屏,简单写了个 Chrome 脚本去调用录屏软件进行录屏和保存,家里电脑开了一天多录完了。只要网络可以,不出现那种加载中的状态,录屏还是可以的。
    annielong
    annielong
    Nov 4, 2020
    12
    一般有 key 有 vi 属于标准加密吧,见过一个视频网站才是真加密,不用 key 和 vi,直接把 ts 硬编码成 png 格式,
    Hansah
    Hansah
    Nov 4, 2020 via Android
    13
    用安卓端的 UC 浏览器登录看看,自带下载功能
    saar
    saar
    Nov 4, 2020
    14
    saar
    saar
    Nov 4, 2020
    15
    少打了个 4...,go /t/292974
    xinghen57
    xinghen57
    Nov 4, 2020 via iPhone
    16
    ffmpeg 转录
    oree
    oree
    Nov 4, 2020
    17
    NETFLIX 如何录屏?
    shakaraka
    shakaraka
    Nov 4, 2020
    18
    拿手机录下来就行了啊
    IDAEngine
    IDAEngine
    Nov 4, 2020 via iPhone
    19
    直接在底层下手,av 模块改一改
    IDAEngine
    IDAEngine
    Nov 4, 2020 via iPhone
    20
    把裸 h265/265 提取下来
    Rwing
    Rwing
    Nov 4, 2020
    21
    @hnbcinfo 666 求教 chrome 怎么调用录屏软件?
    yimity
    yimity
    Nov 4, 2020
    22
    @zhw2590582
    @kajweb
    @shenfu1991
    @IDAEngine
    求各位大神更详细的信息。
    ixinshang
    ixinshang
    Nov 4, 2020
    23
    @hnbcinfo 能否分享一下,有几个学习视频,没法一直用电脑看,想弄到手机上。
    liuze0109
    liuze0109
    Nov 4, 2020
    24
    downie 下载工具试过没?
    LeeSeoung
    LeeSeoung
    Nov 4, 2020
    25
    把返回体里的 ts 链接全部下载后按顺序拼接在一起就是了
    hnbcinfo
    hnbcinfo
    Nov 4, 2020
    26
    @Rwing
    @ixinshang
    我不是直接 Chrome 录屏的,我自己不怎么会前端,所有我用了比较笨的方法。

    1 、录屏软件,我用的 Captura,配置好开始和停止录屏的快捷键。
    2 、开发了一个 windows 程序,超级简单,只用来接收请求,并发送全局模拟按键,通过快捷键调用录屏软件。
    3 、我写了 chrome 插件判断每个视频的播放开始和结束,开始时,发送一个 http 请求给 windows 程序,视频播放结束时,发送一个 http 请求给 windows 程序,同时切换到下一个视频。


    Captura 是开源的,本来想着在它的基础上开发一下的,后来还得读源码,放弃了,就用了这种曲线救国的方式,比较笨,但是开发的快啊,一个小时就能搞定。
    ungrown
    ungrown
    Nov 4, 2020
    27
    @annielong #12 那不是为了白嫖国内的 CDN 用的套路吗
    hnbcinfo
    hnbcinfo
    Nov 4, 2020
    29
    @hnbcinfo 同时还得处理下,如果模拟点击的方式切换视频会有退出全屏的问题,录屏起来就不好看了。
    保利威视有文档,可以看看他们播放器的代码,很容易做到通过执行 js 切换视频。然后在播放页面,提前获取了视频的 Id,视频结束,直接切换即可。

    而且保利威视的视频,支持跑马灯的文字水印,带有当前账户的信息。不过不是嵌入到视频里的,所有很容易去掉,记得在 chrome 插件里添加去掉水印的方法在录屏
    annielong
    annielong
    Nov 4, 2020
    30
    @ungrown 不确定,以前有类似的是光改了扩展名,实际还是视频文件,下载后直接合并就行了,这个不行,下载下来查看文件头都是 png 的
    riordanw
    riordanw
    Nov 4, 2020
    31
    可以试下,用 VLC 播放 m3u8,然后存储。
    ixinshang
    ixinshang
    Nov 4, 2020
    32
    @hnbcinfo 好的 谢谢。 我再去试试其他办法
    TangMonk
    TangMonk
    Nov 4, 2020 via iPad
    33
    下载下来的 ts 用 AES-128 带上 key 解密就可以了,看样子没有偏移量。
    TangMonk
    TangMonk
    Nov 4, 2020 via iPad
    34
    之前搞过小鹅通的,差不多的
    TangMonk
    TangMonk
    Nov 4, 2020 via iPad
    35
    @annielong 硬编码成 png? 好奇,怎么搞的?
    zouguolvyi
    zouguolvyi
    Nov 5, 2020
    36
    chrome 插件 stream recorder 应该可以解决你的问题
    mamahaha
    mamahaha
    Nov 5, 2020
    37
    这都是分段的同时再加密的,就算你把切片都下载下来也看不了,除非你能黑掉服务器找到他的密钥文件。老老实实录屏吧。
    ttimasdf
    ttimasdf
    Mar 18, 2022
    38
    key 的数据变换比较复杂,调试起来也需要一定技巧,但加密是标准的加密。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   3082 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 84ms · UTC 04:42 · PVG 12:42 · LAX 20:42 · JFK 23:42
    ♥ Do have faith in what you're doing.