V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
MisterQ
V2EX  ›  程序员

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

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

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

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


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

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