-
Notifications
You must be signed in to change notification settings - Fork 2
CookieCloud 配置
返回主页:Home
凌辉Bot 使用的 nonebot_plugin_bilichat 插件支持通过 CookieCloud 方式获取用户 Cookie 以登录哔哩哔哩。这可以有效降低因登录状态异常导致的订阅获取失败问题(解决例如 ERROR 412 或 ERROR 429 问题)。
⚠️ 警告:实验性功能!
应用此功能时,请注意可能的环境损坏风险。此功能会在本地运行一个 Uvicorn 服务器,相关代码位于src/plugins/cookiecloud目录。
本教程默认您已经成功将凌辉Bot运行于您的服务器中。
您需要在一个已经登录过哔哩哔哩的浏览器中安装 CookieCloud 插件,并在插件中设置好您的密码和UUID。
- Chrome 商店:CookieCloud for Chrome
- Edge 商店:CookieCloud for Edge
- Firefox 商店:CookieCloud for Firefox
打开项目中的 config/nonebot_plugin_config/config.yaml 文件,找到 local_api_config 配置项,在其下方添加如下内容:
cookie_clouds:
- password: 你的CookieCloud密码
url: http://127.0.0.1:23333
uuid: 你的CookieCloud的UUID
⚠️ 缩进警告:由于 YAML 语法对缩进极为敏感,请务必保证password、url、uuid前面的缩进空格数与示例完全一致。
在终端中定位到 src/plugins/cookiecloud 目录下,根据您的操作系统执行对应命令启动 Uvicorn 服务器:
Linux 系统(推荐后台运行):
nohup .venv/bin/uvicorn main:app --host 127.0.0.1 --port 23333 > cc.log 2>&1 &提示:若您的虚拟环境路径不同,请将 .venv/bin/uvicorn 替换为您实际的路径。
Windows 系统(前台运行):
.venv\Scripts\uvicorn.exe main:app --host 127.0.0.1 --port 23333提示:Windows 下请使用反斜杠 \,且运行期间请勿关闭此终端窗口。
在浏览器的 CookieCloud 插件中,单击 测试 或 手动同步 按钮。然后观察刚刚运行 Uvicorn 的终端,如果出现如下信息,说明本地服务接收成功:
INFO: 127.0.0.1:42378 - "GET /get/你的UUID HTTP/1.1" 200 OK重启凌辉Bot实例,观察终端输出。如果出现以下日志,表示 CookieCloud 已成功与 bilichat 插件绑定:
[INFO] nonebot_plugin_bilichat | 本地 API 已启用, 地址: http://127.0.0.1:port/bilichat_local_request_api/bilichatapi 配置: 随后终端会输出一长串 JSON 配置信息,请重点检查末尾的 cookie_clouds 字段是否包含您刚才填写的账密信息:
{
... (省略其他配置) ...
"cookie_clouds": [{
"url": "http://127.0.0.1:23333",
"uuid": "你的UUID",
"password": "你的Password"
}]
}如果以上信息核对无误,即意味着您已经成功配置了 CookieCloud!现在凌辉Bot的bilichat插件已经可以使用 CookieCloud 稳定获取用户 Cookie 了。
如遇更详细的问题或疑难解答,请联系开发者解决。
或者可以前往常见问题与排错-(FAQ)#插件-nonebot_plugin_bilichat提示获取token失败尝试获取你的问题。
凌辉 Bot 的Bilibili订阅依赖于nonebot_plugin_bilichat插件,其支持的通过 CookieCloud 获取Cookie功能,本质上是让凌辉 Bot 获取到真实用户的 Cookie。
扫码登录产生的 Cookie 缺乏完整的浏览器环境特征,极易被服务器判定为异常请求,导致短时间内触发 HTTP 412 (Precondition Failed) 或 429 (Too Many Requests) 错误。而 CookieCloud 的作用是直接将您浏览器中真实、活跃的 Cookie 同步给 Bot。由于这些 Cookie 伴随着真实的浏览行为和完整的环境上下文,其存活时间和请求合法性远高于扫码获取的 Cookie。这个表格详细展示了两者之间的区别以及Cookie存活时间对比:
| 对比维度 | 使用扫码登录获取的Cookie | 使用CookieCloud获取的Cookie |
|---|---|---|
| Cookie存活时间 | 极短(约 1~1.5 小时后即易触发 HTTP 412 失效) | 极长(可达 30 天以上,且期间请求均保持 HTTP 200 正常状态) |
| 部署时间 | 每次失效均需在群内发送指令并扫码,单次约 30 秒 | 仅首次配置需约 5 分钟,后续由浏览器插件自动同步,耗时近乎 0 秒 |
以上参数均在海龟的电脑上进行测试,具体过期时长可能由于具体的计算机系统或bilibili账户权重不同而导致Cookie有效期不一致。
综合来看,配置 CookieCloud 是对保障凌辉 Bot Bilibili 订阅功能稳定、长效运行的必要操作,它保障了该功能可以稳定、长效地运行于系统中。