🍰 Never miss your Streamer again
主播直播助手,部署后,后台批量监测各个平台主播是否在线,并实时录制直播保存为视频文件,停播后投稿到b站。(关于版权问题,投稿的参数默认一律设置的转载,简介处默认放的有主播房间号)
复制一份templates/info-example.json
,并重命名为templates/info.json
文件:
字段 | 备注 | 可选值 |
---|---|---|
personInfo | 投稿上传的b站账号和密码 | |
access_token | 支持access_token验证,避免频繁登录造成出现验证码登录 | |
streamerInfo | 需要批量录制的主播,key为标题信息,value为包含主播直播地址和标签数组的对象。像移动端的直播地址,可进入APP点分享按钮,复制分享链接中的URL,如抖音的https://v.douyin.com/J2Nw8YM/ | |
tags | 投稿标签,不能为空,总数量不能超过12个, 并且单个不能超过20个字,否则稿件投稿失败 | |
tid | 投稿分区,详见表:tid表 | |
uploadLocalFile | 是否投稿,默认上传 | false 仅下载,不上传 |
deleteLocalFile | 是否在投稿后删除本地文件,该选项仅在uploadLocalFile设置为true时启用,不填写该字段则默认删除 | |
templateTitle | 稿件标题 | |
desc | 稿件描述 | |
source | 稿件来源 | |
dynamic | 稿件粉丝动态 | |
copyright | 稿件版权类型 | 1自制 2转载 |
{
"StreamerHelper": {
"debug": false, #Debug开关
"roomCheckTime": 120, #房间检测间隔,秒
"videoPartLimitSize": 100, #小于此大小的文件不上传,MB,解决主播断流问题出现很多小切片导致上传审核失败
"denyTime": 2 #延迟删除视频文件(需要deleteLocalFile为true), 天
},
"personInfo": {
"nickname": "",
"username": "",
"password": "",
"access_token": "",
"refresh_token": "",
"expires_in": "",
"tokenSignDate": "",
"mid": 0
},
"streamerInfo": [
{
"iGNing": {
"uploadLocalFile": true,
"deleteLocalFile": false,
"templateTitle": "",#稿件标题,
"desc": "Powered By SteamerHelper",#稿件描述,
"source": "",#稿件来源,
"dynamic": "",#稿件粉丝动态,
"copyright": 2,#1自制 2转载
"roomUrl": "https://www.huya.com/980312",
"tid": 121,
"tags": [
"英雄联盟",
"电子竞技",
"iG"
]
}
}
]
}
配置文件: /app/templates/info.json
视频目录: /app/download
容器的保活使用docker提供的restart
参数,不再使用PM2。
DNS参数可以根据地区以及实际情况进行配置。
docker run --name stream -itd -v /path/to/config/info.json:/app/templates/info.json -v /path/to/download/:/app/download --dns 114.114.114.114 --restart always zsnmwy/streamerhelper
mac:
brew update
brew install ffmpeg
linux:
sudo add-apt-repository ppa:djcj/hybrid
sudo apt-get update
sudo apt-get install ffmpeg
部署:
npm i -g pm2
git clone https://github.com/ZhangMingZhao1/StreamerHelper.git && cd StreamerHelper
npm i
npm run serve
我们的机器在下面环境下完美运行:
阿里云轻量应用服务器,内存2g,CPU 1核,Ubuntu 18.04,同时检测两个主播。
Node.js | npm | TypeScript |
---|---|---|
12.18.2 | 6.14.5 | 3.9.6 |
Thanks:
- 支持斗鱼,虎牙,b站直播,afreeca,抖音直播,快手直播,西瓜直播,花椒直播,YY 直播,战旗直播,酷狗繁星,NOW 直播,CC 直播,企鹅电竞直播
- 自动监测主播在线
- 自动上传b站
- 多p下载多p上传
- 支持多个主播
- tag可配置,对应在info.json的每个主播
- 支持access_token验证,防验证码
- 重启后同时检测本地是否有上传失败的视频文件,并上传。
- 爬虫定时区间,节省服务器流量,现支持配置房间检测间隔
- 支持docker部署
- 上传文件大小监测,解决主播断流问题出现很多小切片导致上传审核失败
- 支持twitch
- 增加一个独立脚本遍历download文件夹下的视频文件重新上传(重启上传的折中解决办法,还有解决第一次账号密码配置错误失败上传的问题)
见:https://space.bilibili.com/3356199 或者 https://space.bilibili.com/11314291
建议使用管口大的vps,否则上传下载速度可能会受影响。更新后请及时git pull重新pm2 restart app。vps比较低配的话配置的主播数量不要太多,也要注意vps的磁盘大小。日志文件会自动创建,在./logs/下。
有问题加qq群1142141023,备注streamerHelper