对于nonebot2和go-cqhttp的构建,nonebot2的官网上有较为详细的搭建方法,这里先放上官网链接:
nonebot2:概览 | NoneBot
go-cqhttp:简介 | go-cqhttp 帮助中心
我使用的是win10配置的机器人,仅供参考。
搭建步骤:
一、下载python
要求:需要 Python 3.7.3 以上版本
建议把python添加到系统路径。
二、安装VSCode
这一步可以自由选择,不过vscode确实蛮好用的,在机器人代码调试过程中可以快速重启机器人,方便调试。
三、安装nonebot2(通过脚手架安装)
(1)安装脚手架
pip install nb-cli
(2)通过脚手架创建机器人框架
在你想要创建机器人的文件夹下打开cmd,运行下面指令:
nb create
然后根据提示选择自己需要的设置,没有特殊需要,按照默认选择即可,因为后面适用go-cqhttp,因此在创建时选择cqhttp。
四、配置 CQHTTP 协议端
(1)安装 NoneBot CQHTTP 适配器
pip install nonebot-adapter-cqhttp
(2)下载go-cqhttp
从Releases · Mrs4s/go-cqhttp · GitHub界面下载最新版本的 go-cqhttp
简单一点就下载go-cqhttp_windows_amd64.exe然后双击运行即可。
(3)安装go-cqhttp
第一次双击下载的.exe文件后会创建一个config.yml文件,然后可以用vscode打开config.yml这个文件,根据文件内提示,修改相关设置。一般只要修改如下项目:(适用于反向websocket连接)
account:
uin: 机器人QQ号
password: "机器人密码"
message:
post-format: array
servers:
- ws-reverse:
universal: ws://127.0.0.1:8080/cqhttp/ws
(4)对应修改nonebot的配置
在bot.py中添加这一段
CQHTTP_WS_URLS={"机器人QQ号": "ws://127.0.0.1:6700/"}
五、验证机器人通信
在配置好上述项目后,我们就可以运行机器人和go-cqhttp来验证通信是否能够成功。
(建议机器人在vscode中运行)
在vscode中打开终端,输入nb run
打开go-cqhttp安装的文件夹,运行go-cqhttp.exe
如果vscode中显示 WebSocket Connection from CQHTTP Bot (机器人的qq号) Accepted!
即表明nonebot2与go-cqhttp连接成功,可以接受信息了。
注意:第一次使用go-cqhttp登录qq的时候会要求验证qq设备锁,建议复制到手机打开网址(电脑上打开容易失败)