Bilibili Toolkit – 哔哩哔哩工具箱

Robocon 的一年也终于结束了呢。打江山容易守江山难,今年电科还是没能重夺国内冠军,心塞唉。回想起刚进队时的那份热情,在 Youtube 上偶然看到了规则视频,第一时间就翻译并搬运到了 Bilibili,得以让全国参赛高校都能在第一时间知晓今年的赛题。话说这也是我自去年儿童节正式成为 B 站会员以来的第一次投稿。而后不久又恰逢世界第一公主殿下(我老婆)中文音源发售,我在假期期间也尝试翻调了两首曲子并投了稿,收到了不少的硬币打赏,体验到了由一名普通 Mikufan 进阶成为 Producer 的快感。以这个不一样的身份再次融入哔哩哔哩后,我发现我的生活越来越离不开这个小破站了。

然后又过了很久,我在一次探索 Github 时瞄见了一个非常神奇的 Repo:哔哩哔哩直播助手。我平时并不玩直播,不过觉得这个项目很有意思,就 Clone 了下来运行了一波,结果发现这玩意儿简直黑科技啊,抽小电视什么的全自动,一键解放生产力!可是找了一圈没找到主站助手,想着一年来除了写机器人的电控程序就没写过别的,再加上比赛前期我在使用 ROS(机器人操作系统),正好更加深入地学习了 Python,坚信 Python 大法好,就决定干脆造个轮子吧!于是我就使用 Google Chrome 开发者工具抓包 + Requests 库,苟出了这个哔哩哔哩工具箱……

前往 GitHub 了解本项目

🛠️ 哔哩哔哩(B站)辅助工具箱,支持Cookie/Token/Password融合持久化登录与多用户操作

功能

组件 版本 描述
login 2018/11/24 登录
get_user_info 2018/8/28 获取用户信息
set_privacy 2018/7/24 修改隐私设置
silver_to_coin 2018/8/8 银瓜子兑换硬币
watch 2018/8/30 观看
like 2018/7/8 好评
reward 2018/11/22 投币
favour 2018/6/20 收藏
share 2018/6/20 分享
follow 2018/7/8 关注
danmaku_post 2018/8/28 弹幕发送
comment_like 2018/6/27 评论点赞
comment_post 2018/8/26 评论发表
dynamic_like 2018/6/29 动态点赞
dynamic_repost 2018/10/13 动态转发
dynamic_purge 2018/11/24 动态清理
mall_rush 2018/9/24 会员购抢购
mall_sign 2018/9/19 会员购周年庆活动签到
mall_lottery 2018/9/24 会员购周年庆活动扭蛋
mall_prize 2018/9/19 会员购周年庆活动中奖查询
live_tool 2018/11/25 直播助手

注:周期性任务主要由live_tool组件执行,请前往这里以了解更多

使用指南

源代码版本(推荐)

  1. 克隆或下载本代码仓库,并修改默认配置文件config.toml
$ git clone https://github.com/Hsury/Bilibili-Toolkit.git
$ cd Bilibili-Toolkit
$ nano config.toml
  1. 使用pip安装所需依赖
$ python3.6 -m pip install -U requests rsa selenium toml
  1. 使用Python 3.6启动脚本
$ python3.6 bilibili.py

二进制版本

Release页面下载并解压与您的平台适配的压缩包,修改默认配置文件config.toml后运行即可

登录验证码识别API

使用CNN卷积神经网络构建,识别准确率达到98.8%

url = "http://132.232.138.236:2233/captcha"
payload = base64.b64encode(image)
response = requests.post(url, data=payload)
captcha = response.text

捐赠

若本项目对您有所帮助,欢迎请我喝杯妹汁 (=・ω・=)

鸣谢

本项目的灵感与使用到的部分API来自以下项目:

czp3009/bilibili-api

yjqiang/bilibili-live-tools

许可证

Bilibili Toolkit is under The Star And Thank Author License (SATA)

本项目基于MIT协议发布,并增加了SATA协议

您有义务为此开源项目点赞,并考虑额外给予作者适当的奖励 ∠( ᐛ 」∠)_

2 条评论

发表评论

*

    • 我先是找了一些标注正确率未知的样本训练出了一个识别准确率在50%左右的网络, 然后使用这个初代网络模拟登录, 对产生的验证码进行标注并依据是否成功登录分类保存. 这样就能得到一批标注正确率为100%的新样本, 再掺入一些手动标注修正的识别错误的验证码, 再进行二代网络的训练. 这样迭代几次, 训练出来的神经网络准确率就很高了.
      关于网络内部的结构, 您可以研究下这个项目喔~
      https://github.com/kerlomz/captcha_trainer