自动挂牌子工具,定时检测主播开播情况,当日经验挂满后自动离开直播间,支持扫码登录。
请认准唯二指定下载仓库 Github、Gitee。
本工具完全免费、开源,有更好的点子欢迎PR。
- 支持 Windows10 及以上,请前往 发布页面 下载解压后双击运行即可。
-
- 安装
- NodeJs 和 NPM (尽量保持为最新版)
- 下载源码
- 安装依赖包(建议
npm ci
)
- 运行
npm run start
或node entry.js
- 进阶
使用进程守护挂载
如果你在进程守护中配置了定时重启,请关闭 config.autoRestart 选项
PM2 配置示例文件在/ecosystem.config.js
。
- 安装
请参阅 CHANGELOG.md
本工具不会向A站以外的任何服务器发送或储存你的任何信息,也不会分享任何信息给任意第三方,所有操作均通过A站API实现。
- Win 用户扫码登录不储存任何信息;账号密码登录则储存于运行环境中,关闭即销毁;同时开启记住登录状态选项,会将
cookies
储存于本地。 - Linux 用户账号密码明文存储于本地,请自行保证本地环境安全。
本工具通过 Puppeteer 操控 Chromium 内核的浏览器实现如下操作:
- 根据你提供的信息进行登录操作;
- 查询你的粉丝牌列表及粉丝牌经验;
- 使用你的账号信息查询主播开播信息;
- 使用你的账号进入直播间。
- 2022-05-17 无常猴 ac34895639 ac34899002
- 及时修改密码,定期更新密码,增加密码复杂程度。尤其是账号注册时间较长、密码较长时间未更改、多平台使用同一密码的用户。
- 不使用来历不明的第三方程序,谨慎点击不明链接,保护账号安全。
- 2021-02-05 无常猴 ac23978179
我们注意到最近有很多有关A站平台的自制插件出现在社区中,我们不鼓励也不禁止大家自行开发涉AC的相关插件,但请肥肥们一定注意账号财产安全,对所有需要A站账号密码的插件有所警惕,在A站只有平台登录与APP登录才可以提供账号密码哦。
- 2021-06-08 活动猴 ac29442323
用户不得以任何不正当手段及其他破坏活动规则、违背活动公平原则的方式参与本活动。一经发现,本平台有权撤消活动资格,亦有权收回用户已领取的现金奖励、实物奖品或者虚拟奖品,并保留追究该用户责任的权利。如因前述不正当手段被本平台追究责任造成的损失,本平台不进行任何赔偿或补偿。不正当手段及舞弊行为包括但不限于:下载非官方客户端;使用模拟器、插件、外挂等非法工具扫码、下载、安装、注册、登录、赠与、领取奖励;恶意购买;虚假分享;倒买倒卖;注册多个账号;篡改设备数据;恶意牟利等扰乱平台秩序;使用插件、外挂、系统或第三方工具对本平台及本次活动进行干扰、破坏、修改或施加其他影响及本平台认为的其他不正当手段
键名 | 类型 | 说明 |
---|---|---|
account | String | 账号 |
password | String | 密码 |
debug | Boolean | 是否开启调试,默认不开启 是则会在前台展示浏览器 否则静默运行 |
autoRestart | Boolean String |
是否开启点自动重启 true 为每天0点 文本需符合 cron 规则的文本 |
checkLiveTimeout | Number | 每(分钟)检查直播 |
likeBtnTimeout | Number | 每(分钟)自动点赞 0为关闭自动点赞 |
defaultTimeout | Number | 异步操作最多等待(分钟) |
executablePath | String | Chromium 路径 例 C:/Program Files (x86)/Google/Chrome/Application/chrome.exe 注意路径的斜杠方向 |
uidUnwatchList | Array | 这些 UID 的直播间不看 |
showLiveInfo | Boolean | 检查直播状态时是否展示主播详细信息 |
checkWearMedal | Boolean | 佩戴牌子的主播不观看 (戴着牌子说明你正在D TA,不需要服务器挂牌子) |
serverRoomLimit | Array | 支持多台服务器 假如你有三台服务器,并填入了 [3, 2, 0] 第一台服务器负责挂第0、1、2个直播间 第二台服务器挂第3、4个直播间 第三台服务器挂剩余的所有直播 直播间按开播时间从早到晚排序 请先测试你的机子能挂多少直播间 (估计1G内存可以挂2个直播间) |
serverIndex | Array | 当前是第几台,从0开始 |
checkAllRoom | Boolean | 只要有牌子,不管是否关注都监控 |
useObsDanmaku | Boolean | 使用官方OBS弹幕工具监控 开启此项时 自动点赞功能 会失效 |
notification | Boolean Array |
借助第三方APP推送开播通知 true: 有粉丝牌的主播都通知 false: 不推送开播通知 [ Number ]: 指定uid开播推送 此配置项会受 checkAllRoom 影响服务器时间的 0~6 点不推送 |
iftttKey | String | IFTTT 密钥 配置方法 |
barkKey | String | Bark 密钥 仅限IOS 配置方法 |
cookies | String Array |
保存登录状态的字段 要么为空字符串,要么为 puppeteer 导出的cookies 数组 |
version | String | 当前版本号 本工具会将它与Github上的版本号对比并提示是否有更新 |
- 创建Applets
- My Applets - Create
- If This - Add
- 搜索 webhooks 并进入配置
- Event Name 输入 acfun_live
- Then That - Add
- 搜索选择 Notifications
- 选择 Send a rich notification from the IFTTT app
- Title 选择变量 Value1
- Message 选择变量 Value2
- Link URL 选择变量 Value3
- Create action
- Continue
- Finish
- 获取 Webhooks Key
- 打开 https://ifttt.com/maker_webhooks
- 点击 Documentation
- 此页面会显示你的 key
(可以在这个页面测试你的 Webhook )
- App Store 搜索并下载安装
- 打开 app 就可以看到链接 https://api.day.app/你的key/
- Q
ERROR: Failed to set up Chromium r782078! Set "PUPPETEER_SKIP_DOWNLOAD" env variable to skip download. - A
一般是网络慢导致下载浏览器失败,解决方法有二- 设置淘宝源后再次尝试安装
npm config set puppeteer_download_host=https://npm.taobao.org/mirrors
- 如果你本机已经安装 Chromium,可以设置跳过下载后,再次尝试安装
npm config set puppeteer_skip_chromium_download=true
运行前需要在 config.json 里填入 executablePath
- 设置淘宝源后再次尝试安装
- Q
npm默认不以root身份运行 - A
npm install puppeteer --unsafe-perm=true --allow-root
puppeteer/puppeteer#1597
- Q
(node:10916) UnhandledPromiseRejectionWarning: Error: Failed to launch the browser process! path/node_modules/puppeteer/.local-chromium/linux-782078/chrome-linux/chrome: error while loading shared libraries: libXss.so.1: cannot open shared object file: No such file or directory - A
查找缺少的依赖并安装
https://github.com/puppeteer/puppeteer/blob/main/docs/troubleshooting.md
- Q
打包Windows单文件时进度慢或者失败 - A
可能是需要下载node包缓慢导致的- 去 https://github.com/vercel/pkg-fetch/releases 下载提示中的
node
版本包 - 放到
C:\Users\{用户名}\.pkg-cache\{当前pkg版本号}
目录下 - 改名为
fetched-{node版本号}-win-x64
- 再次运行打包命令即可
- 去 https://github.com/vercel/pkg-fetch/releases 下载提示中的
- Q
其他问题请参照Puppeteer
官方解决方案 - A
https://github.com/puppeteer/puppeteer/blob/main/docs/troubleshooting.md
- Q
在linux-arm64
中使用新版本Puppeteer
(v20+) 无法启动浏览器 - A
需要手动安装chromium-browser
,并在config.json
中指定运行路径/usr/bin/chromium-browser
apt install chromium-browser
[Bug]: Failed to launch the browser process! syntax error: "(" unexpected on ARM Linux