今天给大家带来一个qq群聊机器人搭建的教程
官方文档:
go-cqhttp: https://docs.go-cqhttp.org/
nonebot:https://docs.nonebot.dev/
如果后期有需要自行开发的插件则需要参考官方文档提供的API接口来进行相应的编写,再根据go-cq提供的CQ码进行输入输出,本次教程使用的语言为python语言,且版本号为3.8以上。
第一步: 安装环境
使用脚手架安装(官方推荐)
pip install nb-cli
或直接安装
pip install nonebot2
请确保环境内没有nonebot,如果有请先卸载
pip uninstall nonebot
第二步:下载cqhttp
选择与自己系统对应的包下载,本次教程使用的是win10系统下的,所以我们下载
并解压得到
第三步:创建机器人
在另一个新建文件夹内使用Power Shell输入
nb create
就会得到如下界面:
第一步我们取名机器人名字为:ying
第二步时我们用方向键向下选择第二个并回车
第三步我们输入y
第四步我们选择cqhttp,并且需要按下空格来选择,按下空格后圆圈会填充表示已选择,再按下回车
完成如上操作之后我们就会得到以下文件
第四步:配置文件
完成之后我们回到下载文件解压的目录,在目录下使用Power Shell打开
在Power Shell内输入
.\go-cqhttp.exe
此时会生成机器人相关的配置文件,我们打开生成的配置文件config.xml
我们可以在uin输入自己机器人的qq账号,在password里输入qq密码
若留空时,运行时会出现二维码进行扫码登录操作,并且会保存缓存下次登录时就不需要在扫码登录了。
在下方的ws-reverse内
ws-reverse:
# 是否禁用当前反向WS服务
disabled: true
# 反向WS Universal 地址
# 注意 设置了此项地址后下面两项将会被忽略
universal: ws://your_websocket_universal.server
# 反向WS API 地址
api: ws://your_websocket_api.server
# 反向WS Event 地址
event: ws://your_websocket_event.server
# 重连间隔 单位毫秒
reconnect-interval: 3000
middlewares:
<<: *default # 引用默认中间件
我们需要修改universal的地址,将里面的地址改为
ws://127.0.0.1:8080/cqhttp/ws
8080端口号可以更改,但需要跟ying文件夹内生成的env的配置文件的端口号相同
第五步:运行机器人
我们打开ying文件夹内的bot.py文件,会得到
接着我们使用power shell打开go-cqhttp
使用faststart可以跳过默认等待的5秒启动时间,接着我们扫码登录
成功连接上会得到这些信息,那么就代表我们的机器人启动成功了
接下来可以验证一下机器人是否启动成功,nonebot内置有echo插件
用法是
/echo wei,zaima
得到复读回来的消息就代表我们的机器人成功运作了。
对机器人感兴趣的小伙伴可以点个关注,后续会带来更多的机器人插件。