斗鱼录播下载 CLI

276 天前
 renmu123

项目地址: 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

1576 次点击
所在节点    分享创造
2 条回复
CalledKingsley
276 天前
支持一下,已 star
renmu123
276 天前
@CalledKingsley 感谢你的支持~

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1018298

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX