NoneBot2 plugin for pushing update and live notifications from Bibibili.
Project description
📖 介绍
B站UP的更新与开播通知机,可以在指定的间隔爬取一次B站账号关注的动态与关注的正在直播的UP列表,自动给UP点赞,并将设置好的特定UP的更新或开播信息推送到QQ群里。
理论上适配SAA支持的各种协议,实测了Onebot v11协议成功。
💿 安装
使用 nb-cli 安装
在 nonebot2 项目的根目录下打开命令行, 输入以下指令即可安装nb plugin install nonebot-plugin-bilibili-notifier
使用包管理器安装
在 nonebot2 项目的插件目录下, 打开命令行, 根据你使用的包管理器, 输入相应的安装命令pip
pip install nonebot-plugin-bilibili-notifier
pdm
pdm add nonebot-plugin-bilibili-notifier
poetry
poetry add nonebot-plugin-bilibili-notifier
conda
conda install nonebot-plugin-bilibili-notifier
打开 nonebot2 项目根目录下的 pyproject.toml 文件, 在 [tool.nonebot] 部分追加写入
plugins = ["nonebot_plugin_bilibili_notifier"]
⚙️ 配置
首先用你的B站账号关注这些你想要追踪的UP主,并记住TA们的B站数字ID(以下简称BID):(点击主页后地址中显示的space.bilibili.com/[中的这个号码])。
然后导出B站cookies,建议使用Firefox的Export cookie JSON file for Puppeteer插件直接生成JSON文件,如果想手动生成,请确保以下字段有效:
{
"sessdata": "",
"bili_jct": "",
"buvid3": "",
"dedeuserid": ""
}
建议导出cookies时使用和常用的浏览器不同的浏览器(或匿名模式),不然B站会定时要求刷新你的cookies。
在 nonebot2 项目的.env文件中添加下表中的必填配置
| 配置项 | 必填 | 默认值 | 说明 |
|---|---|---|---|
| bnotifier_cookies | 是 | 无 | 上面导出的B站cookies的文件路径 |
| bnotifier_dynamic_update_interval | 是 | 60 | 动态更新获取间隔,单位秒,默认60秒一次 |
| bnotifier_live_update_interval | 是 | 29 | 直播状态获取间隔,单位秒,默认29秒一次 |
| bnotifier_push_updates | 否 | {} | 设置追踪更新的UP主的ID)以及要推送的QQ群号,格式为{: [QQ群号1, QQ群号2, ...], ...}。注意全部号码都应为字符串,一个例子:{"823532": ["xxxxx", "yyyyy"]} |
| bnotifier_push_updates_by_group | 否 | {} | 作用同bnotifier_push_updates但格式为{QQ群: [BID1, BID2, ]},选择一个更适合你的方式即可 |
| bnotifier_push_lives | 否 | {} | 同bnotifier_push_updates但这个变量控制的是开播通知 |
| bnotifier_push_lives_by_group | 否 | {} | 格式同bnotifier_push_updates_by_group但这个变量控制的是开播通知 |
| bnotifier_push_type_blacklist | 否 | {} | 屏蔽推送某种动态信息,格式:{QQ群号或BID: ['DYNAMIC_TYPE_AV', 'DYNAMIC_TYPE_FORWARD', ...]}这样会屏蔽特定群/特定up的某种动态信息。关于动态种类请参考这个连接 |
| bnotifier_msg_truncate | 否 | 500 | 将一条非常长的动态截短到设定的长度 |
| bnotifier_like | 否 | [] | BID或UP昵称列表,bot会给这个列表中的UP发的所有内容点赞 |
| bnotifier_debug_user | 否 | [] | 给列表中的QQ用户发送所有B站消息 |
其它配置为开发调试时使用,正常使用无需调整。
效果图
其它
有问题或新功能需求,请提issue。
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file nonebot-plugin-bilibili-notifier-0.2.2.tar.gz.
File metadata
- Download URL: nonebot-plugin-bilibili-notifier-0.2.2.tar.gz
- Upload date:
- Size: 8.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
66d624bd91fb6c9622913685f3c7dde353d2868d08ce514053fcb3799d4bbd84
|
|
| MD5 |
f7d60798263f129e1c88255bf84e4b80
|
|
| BLAKE2b-256 |
27a0b136648396765e98825a3cfe582c2cde723efc9dab7821a0401945930974
|
File details
Details for the file nonebot_plugin_bilibili_notifier-0.2.2-py3-none-any.whl.
File metadata
- Download URL: nonebot_plugin_bilibili_notifier-0.2.2-py3-none-any.whl
- Upload date:
- Size: 9.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f1a594f6f92c0f11778bdace50da3908b4fa5a44e99276901a660303a8410c5e
|
|
| MD5 |
19d05aef23cf303862d546921a071bda
|
|
| BLAKE2b-256 |
4e2bf9628146288a9b10a33ac8efef7505e34aaa09c35be7c80d59e09ba9ee79
|