Skip to main content

NoneBot2 plugin for pushing update and live notifications from Bibibili.

Project description

NoneBotPluginLogo

NoneBotPluginText

nonebot-plugin-bilibili-notifier

✨ B站UP的更新与开播通知机 ✨

license pypi python

📖 介绍

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nonebot-plugin-bilibili-notifier-0.2.1.tar.gz (8.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file nonebot-plugin-bilibili-notifier-0.2.1.tar.gz.

File metadata

File hashes

Hashes for nonebot-plugin-bilibili-notifier-0.2.1.tar.gz
Algorithm Hash digest
SHA256 b0173b37cd986763538c854e8185976221aaa59496f3004b082f9789f105b43f
MD5 ea5f961cbb1be418a5e75dbb58872bbc
BLAKE2b-256 b90f47c8cdcb06446be1d180b49cb2f12c336e20a4055abf791cb99c76e1c196

See more details on using hashes here.

File details

Details for the file nonebot_plugin_bilibili_notifier-0.2.1-py3-none-any.whl.

File metadata

File hashes

Hashes for nonebot_plugin_bilibili_notifier-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 bc97b1b320e4186e20deeea26471edf411b6b385c50fbbd9048a2bf6be90d857
MD5 a24c7632bc79ff07de5bc5431a3e242d
BLAKE2b-256 3689eda1cdb2aa4fce8f65fcb23fe07f1e3b858d7c6d8d51dce6884bedc64f01

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page