利用 Github Action 实现斗鱼TV自动获取每日粉丝荧光棒,并自动赠送给指定主播。 特色功能:配套浏览器插件实现一键同步/自动更新 Cookie,彻底解决手动抓包的繁恼!
- 每周日自动执行 (默认清空所有背包礼物)
- 配套插件一键同步 Cookie (支持自动/手动模式,免抓包)
- 自动获取每日荧光棒
- 自定义赠送的房间与数量 (支持百分比配置,如
100%) - 平均分配荧光棒至拥有粉丝牌的房间
- 支持所有背包礼物赠送 (不仅限于荧光棒)
- 推送日志 (Server酱/Bark)
- Fork 本项目 到你的 GitHub 仓库。
- 重要: 为了保护你的 Cookie 安全,请务必将 Fork 后的仓库设置为 Private (私有)。
- 进入仓库
Settings->General-> 底部Change visibility-> 改为Private。
- 进入仓库
无需繁琐的手动抓包,使用本项目配套的 Tampermonkey 脚本,一键把 Cookie 同步到你的私有仓库!
-
获取 GitHub Token
- 访问 GitHub Settings -> Developer settings -> Tokens (classic)。
- 点击
Generate new token (classic)。 - Note: 随便填,例如 "Douyu"。
- Expiration: 建议选择
No expiration(永不过期)。 - Select scopes: 必须勾选
repo(Full control of private repositories)。 - 点击底部
Generate token,复制生成的 Token。
-
安装脚本
- 浏览器安装 Tampermonkey (篡改猴) 插件。
- 点击 Tampermonkey 图标 ->
添加新脚本。 - 将本项目根目录下的
tampermonkey_script.js的全部内容复制并覆盖进去。 - 按
Ctrl+S保存。
-
一键同步
- 打开 斗鱼官网 并登录你的账号。
- 点击浏览器右上角的 Tampermonkey 图标,选择 Douyu-Helper 下的
⚙️ 设置。 - 输入第 1 步获取的 Token 和你的 仓库路径 (格式:
用户名/仓库名,例如david/douyu_helper)。 - 配置完成后,脚本会自动将 Cookie 上传到你仓库的
.github/douyu_cookie.txt文件中。 - 日常保活:以后只要你打开斗鱼看直播,脚本会每天自动静默检查并更新一次 Cookie,彻底解放双手!
修改 config/config.ini 文件,设置你想要赠送的房间号。
默认配置:每周日清空所有礼物给房间 36252。
[Modechoose]
giveMode = 1 # 1为自定义模式,0为平均分配
[gift]
giftType = all # 赠送所有背包礼物 (包括荧光棒、弱鸡等)
[selfMode]
roomId = 36252 # 接收礼物的房间号
giftCount = 100% # 赠送数量:支持百分比(100%)或具体数值(100)- 开启 Actions
Fork 仓库后,Actions 默认是禁用的。请进入仓库的
Actions页面,点击绿色的按钮I understand my workflows, go ahead and enable them。 - 手动触发一次
在 Actions 页面左侧选择
Weekly Donate DouYu Gifts-> 右侧点击Run workflow->Run workflow。- 等待运行完成(约1分钟),检查运行结果是否成功。
- 自动计划 默认配置为 每周日晚上 23:00 (北京时间) 自动执行,无需额外操作。
如果你有服务器或长期开机的设备 (如 NAS、树莓派),也可以本地运行。
- Clone 代码到本地。
- 安装依赖:
pip install -r requirements.txt - 配置环境变量:
export COOKIES='你的完整cookie字符串'- 或者直接在项目根目录创建一个
douyu_cookie.txt文件,将 Cookie 粘贴进去。
- 或者直接在项目根目录创建一个
- 运行:
python main.py
Q: 为什么要上传文件而不是用 Secrets? A: GitHub 的 Secrets API 强制要求加密上传,这在浏览器脚本中很难稳定实现(常因网络问题报错)。为了最极致的稳定体验,我们改为上传到仓库的私有文件,Action 运行时会自动优先读取该文件。 安全警告: 请务必将你的仓库设为 Private (私有),否则你的 Cookie 文件会被所有人看到!
Q: 自动同步失败怎么办?
A: 脚本菜单里提供了 📋 手动粘贴 Cookie 功能。在 F12 -> Network 中随便找个请求复制 Cookie 字段,粘贴进去,脚本会帮你完成 Base64 编码并上传。
请各位使用 Actions 时务必遵守 Github 条款。不要滥用 Actions 服务。
Please be sure to abide by the Github terms when using Actions. Do not abuse the Actions service.