视频链接解析,并根据其内容生成基本信息、词云和内容总结
使用 nb-cli 安装
在 nonebot2 项目的根目录下打开命令行, 输入以下指令即可安装nb plugin install nonebot-plugin-bilichat
使用包管理器安装
在 nonebot2 项目的插件目录下, 打开命令行, 根据你使用的包管理器, 输入相应的安装命令pip
pip install nonebot-plugin-bilichat
pdm
pdm add nonebot-plugin-bilichat
poetry
poetry add nonebot-plugin-bilichat
conda
conda install nonebot-plugin-bilichat
打开 nonebot2 项目根目录下的 pyproject.toml
文件, 在 [tool.nonebot]
部分追加写入
plugins = ["nonebot_plugin_bilichat"]
由于本项目存在大量支持热重载的配置参数,因此不能使用 nonebot2
的默认配置文件 .env
,而是使用一个单独的 config.yaml
文件来存储配置。您可以通过在 .env
文件中设置 bilichat_config_path
来手动指定该文件的位置。
您可以参考 配置文件模板 来了解配置项及其含义。
从 6.0.0 版本开始,
bilibili
请求已迁移至 bilichat-request 模块,并改为 API 通讯方式。这一改进带来了多项优化:支持一对多的负载均衡、提升 Cookies 管理效率,并有效应对更严格的风控措施。同时,原本需要浏览器操作(如截图)的任务被移至远程服务器处理,从而减轻本地机器的内存压力。
在部署完 bilichat-request 后,您只需在配置文件中填写相应的 API 地址即可。
api:
request_api:
- api: "https://api.example.com" # API 地址
token: "your_api_token" # API Token (如果服务端未设置,留空)
weight: 1 # 权重,用于负载均衡,数值越大优先级越高
enable: true # 是否启用该 API
- api: "https://api2.example.com" # 可配置多个 API 地址
token: ...
weight: ...
enable: false
若您需要在 nonebot2
中集成 bilichat-request,请确保已经安装并加载了 FastAPI Driver,并执行以下命令安装依赖:
pip install bilichat-request
在配置文件中开启本地 API 服务:
api:
local_api_config: # 本地 API 配置
enable: false # 是否启用本地 API(将其改为 true 开启本地 API)
api_access_token: "" # 本地 API Token
api_path: bilichatapi # 本地 API 挂载路径
api_sub_dynamic_limit: 720/hour # 动态订阅限速
api_sub_live_limit: 1800/hour # 直播订阅限速
# 更多配置请参考 bilichat-request 的配置文件
上述配置会作为启动参数传递给 bilichat-request
。其他额外配置项可参考 bilichat-request 配置文件。
- 初次启动时,系统将自动下载 Playwright 的浏览器内核。确保网络畅通。如果下载失败,您可以尝试设置
playwright_download_host
为国内镜像地址。
直接发送视频(专栏)链接即可
在发送视频时,可以额外添加以下类似 shell 指令的参数,进而对解析流程进行调整。例如
BV12v4y1E7NT --force
BV12v4y1E7NT -f # 可以使用简写
指令 | 简写 | 说明 |
---|---|---|
--force | -f | 忽略 cd 时间,强制解析视频 |
指令部分由 指令前缀
和 指令名
组成,其中 指令前缀
包含 COMMAND_START
bilichat_cmd_start
COMMAND_SEP
三部分,默认的 指令前缀
为 /bilichat.
,即完整的指令为 /bilichat.xxx
指令前缀
部分也是可以修改的,例如 .env 中填入如下设置即可实现无 指令前缀
COMMAND_SEP=[""]
COMMAND_START=[""]
bilichat_cmd_start=""
指令名
如下表所示,其中除登录相关的指令均可自定义,可参考上文的 指令及订阅配置项
指令 | 权限 | 范围 | 参数 | 说明 |
---|---|---|---|---|
sub | 主人 | 群聊 | UP 主的昵称或 UID | 添加订阅 |
unsub | 主人 | 群聊 | UP 主的昵称或 UID,或 all |
移除订阅,all 时为全移除 |
check | 无限制 | 群聊 | UP 主的昵称或 UID,或留空 | 查看本群订阅列表或指定 UP 主的配置 |
checkdynamic | 无限制 | 无限制 | UP 主的昵称或 UID | 查看指定 UP 主的最新一条动态 |
checklogin | 主人 | 无限制 | 无 | 查看当前已登录的全部账号 |
qrlogin | 主人 | 无限制 | 无 | 使用二维码登录 B 站,防止风控 |
logout | 主人 | 无限制 | 账号的 UID | 登出指定的账号 |
在此感谢以下开发者(项目)对本项目做出的贡献:
- BibiGPT 项目灵感来源
- bilibili-API-collect 易姐收集的各种 BiliBili Api 及其提供的 gRPC Api 调用方案
- HarukaBot 功能来源
- BBot-Graia 功能来源
(我 牛 我 自 己) - ABot-Graia 永远怀念最好的 ABot 🙏
- bilireq 项目曾经使用的 bilibili 请求库
- nonebot-plugin-template: 项目的 README 模板
- Misaka-Mikoto-Tech 为本项目提交了多项 BUG 修复和代码参考
- hamo-reid 为 style_blue 绘制了界面
- dynamicrender 曾经提供了 t2i 和动态渲染
- ALC 提供跨平台支持
- 凛雅 提供 QQ 免费 bili 推送姬 成品 BOT 服务