请教大佬们,在线网站抓到 m3u8 能播放,但是用 ffmpeg 下载的时候 “403 forbidden” 或者 “Output file #0 does not contain any stream” 应该怎么解决 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
rrubick
V2EX    FFmpeg

请教大佬们,在线网站抓到 m3u8 能播放,但是用 ffmpeg 下载的时候 “403 forbidden” 或者 “Output file #0 does not contain any stream” 应该怎么解决

  •  
  •   rrubick 2023-01-03 10:24:45 +08:00 6921 次点击
    这是一个创建于 1016 天前的主题,其中的信息可能已经有所发展或是发生改变。

    有的网站能正常下,有的就会报错。

    使用命令如下: ffmpeg -i url -c copy output.mp4

    第 1 条附言    2023-01-03 13:47:41 +08:00
    还有个问题就是,有的网站我把调试打开后,直接进入断点无法正常操作。
    不了解前端,不知道怎么做可以跳过这个
    36 条回复    2023-01-04 17:32:09 +08:00
    ysc3839
        1
    ysc3839  
       2023-01-03 10:33:57 +08:00
    需要 cookie 等额外信息吧
    singerll
        2
    singerll  
       2023-01-03 10:34:57 +08:00   2
    我只想问,你说的在线 m3u8 网站是 91 吗
    lakehylia
        3
    lakehylia  
       2023-01-03 10:38:42 +08:00
    用网页音视频资源下载插件啊,需要 cookie 的
    mobaijun
        4
    mobaijun  
       2023-01-03 10:40:06 +08:00
    @singerll 哈哈哈
    estk
        5
    estk  
       2023-01-03 10:45:49 +08:00 via iPhone
    @singerll
    也可能是 hub 或者 5278
    rrubick
        6
    rrubick  
    OP
       2023-01-03 10:52:22 +08:00
    @ysc3839 #1
    @lakehylia #3
    用了 --header $'Cookie:' 然后把浏览器里的东西拷贝进去也不行,可能我哪里没弄对
    rrubick
        7
    rrubick  
    OP
       2023-01-03 10:54:28 +08:00
    @singerll #2
    @mobaijun #4
    @estk #5
    没,看的剧集。不讨论盗版,求大佬专注于技术问题。用的 mac
    fqzz
        8
    fqzz  
       2023-01-03 11:55:52 +08:00   2
    可能有三个原因:
    1. 没有拿到真正的 ts 文件,比如 cookie
    2. m3u8 本身支持加密,可以搜下 EXT-X-KEY
    3. 有些网站会给每个 ts 套壳,比如加上 png header ,用 file 命令看他是个 png 文件
    bxb100
        9
    bxb100  
       2023-01-03 11:58:37 +08:00   1
    我用这个 N_m3u8DL-RE
    gam2046
        10
    gam2046  
       2023-01-03 12:33:45 +08:00
    @fqzz #8 第三种是标准行为嘛,因为我遇到过一些网站是这样的,我自己把 PNG 头去掉了。但是我不确定他自己的 web 播放器是不是也是这么做的,还是说这是 M3U 的标准行为,可以自己把这个头去掉?
    learningman
        11
    learningman  
       2023-01-03 13:38:15 +08:00
    @gam2046 #10
    他们的播放器是这么做的
    不是标准行为,他们这么干是为了蹭公共图床
    0xsui
        12
    0xsui  
       2023-01-03 13:39:49 +08:00
    去 52pojie 找 m3u8 的下载工具下载
    rrubick
        13
    rrubick  
    OP
       2023-01-03 13:42:37 +08:00
    @fqzz #8
    感谢大佬。我是在剧集播放的时候,只显示 m3u8 类型的文件,然后拷贝的 url 地址去下载。有个网站之前是这种方式可以下载,后来就 403 forbidden 了,折腾了没弄好,就又转到别的网站去下载了 [笑哭]
    rrubick
        14
    rrubick &nbs;
    OP
       2023-01-03 13:44:34 +08:00
    @fqzz #8

    @gam2046 #10
    另外想请教下,我把 m3u8 内容保存到本地,然后去用相同命令去下载,好像不行。。。
    tmtstudio
        15
    tmtstudio  
       2023-01-03 13:46:08 +08:00
    用猫抓,chrome 应用商店就有
    churchmice
        16
    churchmice  
       2023-01-03 13:53:23 +08:00 via Android
    @singerll 91 有 chrome 插件可以直接下,不过没开 vip 清晰度太差
    sobev
        17
    sobev  
       2023-01-03 13:53:46 +08:00
    控制台调试有个按钮可以停用断点
    snowlyg
        18
    snowlyg  
       2023-01-03 14:05:27 +08:00
    xvideo?
    blankmiss
        19
    blankmiss  
       2023-01-03 14:07:27 +08:00
    token 过期了 有的 m3u8 有 token 时效性的
    blankmiss
        20
    blankmiss  
       2023-01-03 14:07:41 +08:00
    要么可能就是有防盗链
    zapper
        21
    zapper  
       2023-01-03 14:15:20 +08:00
    403 就是状态错乱问题,你得走他那套标准流程,不能直接弄 m3u8 。如果你只是想下点剧集,还是找个 web 插件之类比较好。你先在开发者模式下看看 m3u8 请求头带不带其他参数
    duan602728596
        22
    duan602728596  
       2023-01-03 14:29:34 +08:00 via iPhone
    有可能 m3u8 里面的 ts 文件地址验证了 referrer ,你在命令行设置的 headers 只是在请求 m3u8 文件时添加了 header ,并没有在下载 ts 文件时设置了 header
    magnetar
        23
    magnetar  
       2023-01-03 17:51:07 +08:00
    可以完整看下 m3u8 的请求携带的东西,一般有 cookie 或者 token 校验或者还有恶心的加密
    关闭调试断点:Chrome 控制台的 Source Tab 页点击 Deactivate breakpoints 按钮或者按下 Ctrl + f8
    b821025551b
        24
    b821025551b  
       2023-01-03 18:37:12 +08:00
    直接打开 m3u8 抓里面的分片文件;
    m3u8 保存到本地大概率是不行的,很多时候用的是他们域名下的相对路径,需要你自己替换一下;
    chrome 断点问题有两种解决办法,1 是禁用断点,直接点 source 里面倒数第二个,缺点是会造成死循环,页面过一会就卡死了; 2 是找到带 debugger 的那个函数,console 里把这个函数置空:你找到的那个函数=function(){};
    iamben
        25
    iamben  
       2023-01-03 19:41:37 +08:00 via iPhone
    用 yt-dlp 试试?
    ik
        26
    ik  
       2023-01-03 19:45:23 +08:00 via iPhone
    还有可能在浏览器用了代理访问, 单独请求的时候直连了
    sunwei0325
        27
    sunwei0325  
       2023-01-03 20:35:41 +08:00
    可能是 CDN 设置了 cookie, 比如 aws 的 cloudfront 可以设置 signed cookies
    systemcall
        28
    systemcall  
       2023-01-04 01:11:34 +08:00
    先分析一下请求头,一般的小网站多半是请求头的问题
    遇到难搞的就麻烦了,有些甚至还会检测心跳包的
    wedfds
        29
    wedfds  
       2023-01-04 08:50:52 +08:00
    N_m3u8DL-CLI-SimpleG
    deali
        30
    deali  
       2023-01-04 10:16:04 +08:00
    @bxb100 我也是,这个真不错
    puzzle9
        31
    puzzle9  
       2023-01-04 10:44:27 +08:00
    通常是 m3u8 文件带校验 里面的 ts 没有
    或许你可以尝试把 m3u8 先保存起来 再用命令去下载

    断点那个 浏览器有个跳过断点功能
    rrubick
        32
    rrubick  
    OP
       2023-01-04 11:14:54 +08:00
    @bxb100 #9
    试了下, ffmpeg 403 的连接用这个能下,太 NB 了。
    请问大佬知道这个软件在其中做了什么吗?
    rrubick
        33
    rrubick  
    OP
       2023-01-04 11:15:21 +08:00
    @ik #26
    也不是,我终端也设置 proxy 了
    rrubick
        34
    rrubick  
    OP
       2023-01-04 11:21:06 +08:00
    @puzzle9 #31
    本地的 m3u8 文件怎么去下载呢?搜了下没找到。
    断点那个,我记得之前点了好几个按钮都是不行的
    AngryFootHair
        35
    AngryFootHair  
       2023-01-04 17:23:05 +08:00
    @magic3584 试试 123 浏览器 https://v2ex.com/t/906468
    m8syYID5eaas8hF7
        36
    m8syYID5eaas8hF7  
       2023-01-04 17:32:09 +08:00
    ffmpeg 输入参数里把 cookies 和 headers 加上
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5934 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 29ms UTC 02:40 PVG 10:40 LAX 19:40 JFK 22:40
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86