V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
renmu123
V2EX  ›  分享创造

斗鱼录播下载 CLI

  •  
  •   renmu123 · 281 天前 · 1583 次点击
    这是一个创建于 281 天前的主题,其中的信息可能已经有所发展或是发生改变。

    项目地址: https://github.com/renmu123/douyu-video-cli

    简介

    用于下载斗鱼视频录播以及弹幕,支持订阅,自动下载,自动上传到 B 站。

    安装

    npm install douyu-cli

    该程序依赖于ffmpeg,需要手动安装,程序默认会调用环境变量中的ffmpeg,如果想自定于或者无法调用,请使用douyu config set ffmpegBinPath xxxx手动设置可执行文件地址。
    视频教程

    使用

    Usage: douyu [options] [command]
    
    斗鱼视频下载命令行
    
    Options:
      -V, --version             output the version number
      -h, --help                display help for command
    
    Commands:
      download [options] [url]  下载视频
      subscribe|sub             订阅
      config                    配置项
      help [command]            display help for command
    

    下载视频

    douyu download https://v.douyu.com/show/yVY8WwdzNyVvLOz9

    你也可以加上-d, -a 来下载当前视频的所有分 p ,并下载弹幕,弹幕为 b 站兼容格式,你可以使用如 DanmakuFactory 将弹幕转换为 ass 格式进行后续操作。

    如果你正在寻找将录播上传到 B 站的工具,可以尝试一下 biliLive-tools,支持将弹幕转换以及压制到视频中并自动上传。

    Usage: douyu download [options] [url]
    
    下载视频
    
    Options:
      -a, --all      下载所有分 p
      -d, --danmaku  下载弹幕
      -r, --rewrite  覆盖已有文件
      -st, --stream-type 清晰度
      --dir          下载文件夹,会覆盖 config 中的 downloadPath
      -h, --help     display help for command
    

    清晰度参数,默认为最大清晰度
    大致清晰度供参考:
    原画 2K60:1440p60a
    高清 1080P60:1080p60
    高清 720P:high
    标清 480P:normal

    订阅

    添加订阅

    douyu sub add 93589

    移除订阅

    douyu sub remove 93589

    下载订阅

    这个功能会读取订阅主播最近的一次直播回放并进行下载,已下载过的任务不会重复下载。

    webhook 功能

    在视频下载前会发送类似的包给 webhook 服务器: filePath: 下载完成后的文件地址 roomId: 房间号 time: 录播视频开始时间戳 title: 分 p 标题 username: 用户名

    curl --location 'http://127.0.0.1:18010/custom' \
    --header 'Content-Type: application/json' \
    --data '{
        "event":"FileOpening",
        "filePath":"D:\\aa.mp4",
        "roomId": 93589,
        "time":"2021-05-14T17:52:54.946",
        "title":"我是猪",
        "username":"djw"
    }'
    

    你可以搭配 biliLive-tools( 0.9.0 版本及以上) 使用来实现自动压制上传。 如果需要将一天的录播设置为一个分 p ,请开启断播续传功能,并将间隔设置为录播间隔往上,建议设置 3 小时以上。

    douyu sub download

    定时运行下载订阅任务

    默认时间间隔为 60 分钟,斗鱼录播的分隔时间约为 75 分钟,间隔调整为较短大致上也没什么用。

    douyu sub server

    你也可以使用定时任务来执行 douyu sub download 命令,可以到达相同的效果

    赞赏

    如果本项目对你有帮助,请我喝瓶快乐水吧,有助于项目更好维护。
    爱发电:https://afdian.net/a/renmu123

    License

    GPLv3

    2 条回复    2024-02-26 10:17:47 +08:00
    CalledKingsley
        1
    CalledKingsley  
       281 天前
    支持一下,已 star
    renmu123
        2
    renmu123  
    OP
       281 天前
    @CalledKingsley 感谢你的支持~
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5804 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 03:17 · PVG 11:17 · LAX 19:17 · JFK 22:17
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.