NoneBot2 QQ机器人搭建教程

基于官方教程的完整项目演示,使用NoneBot2 2.4版本 + QQ官方机器人

项目概览

完整的QQ机器人项目,包含所有必要组件和配置

完整配置

包含所有必要的配置文件和启动脚本

示例插件

内置echo和weather插件,可直接测试使用

详细文档

完整的搭建指南和使用说明

搭建步骤

1

安装NoneBot2

安装pipx和nb-cli脚手架工具

# 安装pipx
python -m pip install --user pipx
python -m pipx ensurepath

# 安装nb-cli
pipx install nb-cli

# 验证安装
nb
2

创建项目

使用脚手架创建NoneBot项目

# 创建项目
nb

# 选择:
# 1. 创建NoneBot项目
# 2. 模板选择:bootstrap
# 3. 适配器选择:QQ官方机器人
# 4. 依赖选择:HTTPX、websocket
# 5. 安装依赖:是
# 6. 创建虚拟环境:是
3

注册QQ机器人

注册流程:

  • 访问QQ开放平台
  • 创建机器人应用
  • 获取AppID、Token、Secret
  • 配置沙箱环境
  • 设置IP白名单

注意事项:

  • 需要群主或管理员权限
  • 手机QQ添加机器人
  • IP地址可能变化
  • AppSecret只能查看一次
4

配置项目

修改配置文件,连接QQ机器人

# .env.prod 配置示例
QQ_BOTS='[
  {
    "id": "你的机器人ID",
    "token": "你的机器人Token",
    "secret": "你的机器人Secret",
    "intent": {
      "guilds": true,
      "guild_members": true,
      "direct_message": true,
      "open_forum_event": true,
      "message_create": true,
      "message_delete": true,
      "message_guild": true,
      "forum_event": true
    }
  }
]'
QQ_USE_WEBSOCKET=true
5

运行机器人

启动机器人并测试连通性

# 启动机器人
python bot.py

# 预期输出:
# 02-13 14:30:45 [INFO] nonebot | NoneBot is initializing...
# 02-13 14:30:45 [INFO] nonebot | Current Env: prod
# 02-13 14:30:45 [INFO] nonebot | Succeeded to load adapter "QQ"
# 02-13 14:30:45 [INFO] nonebot | Running NoneBot...

配置说明

项目结构

noneBot-qq-bot/
├── bot.py              # 启动脚本
├── .env.prod          # 环境配置
├── pyproject.toml     # 项目配置
├── requirements.txt   # 依赖列表
├── plugins/           # 插件目录
│   ├── __init__.py
│   ├── echo.py       # echo插件
│   └── weather.py    # 天气插件
└── .venv/            # 虚拟环境

关键配置

QQ机器人配置

在.env.prod中配置机器人信息

WebSocket设置

use_websocket必须设为true

插件路径

在pyproject.toml中配置

功能演示

Echo插件

测试机器人连通性的基础插件

用户:@机器人 echo 你好
机器人:你好

天气插件

查询指定城市的天气信息

用户:@机器人 天气 北京
机器人:
🏙️ 北京天气信息:
🌡️ 温度:25°C
☁️ 天气:晴
💧 湿度:45%

可用命令列表

命令 别名 功能 示例
@机器人 - 获取欢迎信息 @机器人
天气 weather, 查天气 查询天气 天气 上海
echo - 回显消息 echo 测试
帮助 help, h 显示帮助 帮助

快速开始

按照以下步骤快速启动你的QQ机器人:

1. 安装依赖

pip install -r requirements.txt

2. 配置机器人

编辑 .env.prod 文件

3. 启动服务

python bot.py

注意事项

  • 确保Python版本 ≥ 3.9(推荐使用3.12)
  • 需要在QQ开放平台注册机器人并获取相关凭证
  • 配置IP白名单时,注意IP地址可能会变化
  • 手机QQ才能添加机器人,PC版暂不支持
  • 确保机器人所在群聊/频道的管理员权限