Github Action 实现自动升级 Bilibili Lv6

  • A+
所属分类:安全博客

前言

不知不觉已经是在B 站的第1003天了:

Github Action 实现自动升级 Bilibili Lv6

B 站进入创作中心右上角可以看到自己账号多久了哦 ~

再看看我的等级:

Github Action 实现自动升级 Bilibili Lv6

诶呦好惭愧 我怎么还没有成为6级大佬 🐶

恰巧今天偶然间翻到了这个:

Github Action 实现自动升级 Bilibili Lv6

简介:

这是一个利用 Linux Crontab , GitHub Action 等方式实现哔哩哔哩(Bilibili)每日任务投币,点赞,分享视频,直播签到,银瓜子兑换硬币,漫画每日签到,简单配置即可每日轻松获取 65 经验值,快来和我一起成为 Lv6 吧~

这六级不是指日可待嘛

BILIBILI-HELPER

仓库地址:https://github.com/JunzhouLiu/BILIBILI-HELPER

功能列表:

  • 每天上午 9 点 10 分自动开始任务。【运行时间可自定义】
  • 哔哩哔哩漫画每日自动签到 。
  • 每日自动从热门视频中随机观看 1 个视频,分享一个视频。
  • 每日从热门视频中选取 5 个进行智能投币 【如果投币不能获得经验,默认不投币】
  • 投币支持下次一定啦,可自定义每日投币数量。【如果检测到你已经投过币了,则不会投币】
  • 大会员月底使用快到期的 B币券,给自己充电,一点也不会浪费哦,默认开启。【可配置】
  • 大会员月初 1 号自动领取每月 5 张 B币券 和福利。
  • 每日哔哩哔哩直播自动签到,领取签到奖励。【直播你可以不看,但是奖励咱们一定要领】
  • 通过server酱推送执行结果到微信。
  • 投币策略更新可配置投币喜好。【可配置优先给关注的up投币】

开始部署

部署过程中还做了一点点贡献 2333

Github Action 实现自动升级 Bilibili Lv6

Fork 仓库

首先要把仓库 Fork 下来进一步配置

Github Action 实现自动升级 Bilibili Lv6

添加 Secrets

首先登录 B 站:https://www.bilibili.com/

F12 Chrome 会弹出开发者工具 获取三个 Cookie 中的值:

  • SESSDATA
  • BILI_JCT
  • DEDEUSERID

Github Action 实现自动升级 Bilibili Lv6

添加到下图位置:

Github Action 实现自动升级 Bilibili Lv6

配置自定义功能

配置文件位于 src/main/resources/config.json

参数示例

Key Value 说明
numberOfCoins [0,5] 每日投币数量,默认 5
selectLike [0,1] 投币时是否点赞,默认 0 0:否 1:是
monthEndAutoCharge [false,true] 年度大会员月底是否用 B币券 给自己充电,默认 true
devicePlatform [ios,android] 手机端漫画签到时的平台,建议选择你设备的平台 ,默认 ios
coinAddPriority [0,1] 0:优先给热榜视频投币,1:优先给关注的up投币
userAgent 浏览器UA 用户可根据部署平台配置,可根据userAgent参数列表自由选取,如果触发了HTTP/1.1 412 Precondition Failed也请修改UA

如果尝试给关注的 up 投币十次后(保不准关注的是年更up主),还没完成每日投币任务,则会切换成热榜模式,给热榜视频投币。

投币数量代码做了处理,如果本日投币不能获得经验了,则不会投币,每天只投能获得经验的硬币。

假设你设置每日投币 3 个,早上 7 点你自己投了 2 个硬币,则十点半时,程序只会投 1 个。

Github Action 实现自动升级 Bilibili Lv6

专属管家 Server Chan

在上面配置 Secrets 的地方新建变量 SERVERPUSHKEY

Github 一键登录 ServerChan 复制自己的专属 Key

Github Action 实现自动升级 Bilibili Lv6

开启 Actions 设置每日自动执行

Fork 仓库后,GitHub 默认不自动执行 Actions 任务

修改 .github/trigger.json 文件,将 trigger 的值改为 1,这样每天就会自动执行定时任务了。

Github Action 实现自动升级 Bilibili Lv6

修改每日任务执行的时间 位置在.github/workflows/auto_task_bilili.yml 第 11 行

Github Action 实现自动升级 Bilibili Lv6

30 14 * * * 表示每天晚上22点30执行

crontab 表达式,Actions 时区是 UTC 时间,所以晚上10点要往前推8个小时。

crontab 定时任务

腾讯云函数、Github Action 甚至是反弹 Shell 都用得到的神器

编辑定时任务 填写的内容如下:

1
2
# 分 时 日 月 星期
30 9 * * *

表示每天 9:30 自动执行

crontab 实例

实例1:每 1 分钟执行一次

1
* * * * *

实例2:每小时的第 3 和第 15 分钟执行

1
3,15 * * * *

实例3:在上午 8 点到 10 点的第 3 和第 15 分钟执行

1
3,15 8-10 * * * 

实例4:每隔两天的上午 8 点到 10 点的第 3 和第 15 分钟执行

1
3,15 8-10 */2  *  *

实例5:每周六、周日的 8 : 10 执行

1
10 8 * * 6,0 

实例6:每天 18 : 00 至 23 : 00 之间每隔 30 分钟执行一次

1
0,30 18-23 * * * 

Github Action 执行工作流

Github Actions 默认处于关闭状态,手动开启 Actions ,执行一次工作流,验证是否可以正常工作。

Github Action 实现自动升级 Bilibili Lv6

可以看到工作日志:

Github Action 实现自动升级 Bilibili Lv6

展开 Build With Maven 通过 DEBUG 标签快速过滤日志,查看运行状态

最终效果

每天坐等65经验 从此快人一步 🚀

Github Action 实现自动升级 Bilibili Lv6

“按照当前进度,升级到升级到Lv6还需要: 268天’’

好漫长嗷 睡觉了 晚安 ~

Github Action 实现自动升级 Bilibili Lv6

FROM : lintstar.top , Author: 离沫凌天๓

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: