【最新】半小时教你制作出属于自己的QQ机器人【保姆级】

您所在的位置:网站首页 唐朝都城分布图 【最新】半小时教你制作出属于自己的QQ机器人【保姆级】

【最新】半小时教你制作出属于自己的QQ机器人【保姆级】

2023-04-25 01:18| 来源: 网络整理| 查看: 265

前言

相信大家都有在QQ群见过QQ机器人,可以玩游戏、推送当日天气情况等。本文将基于nonebot2和go-cqhttp构建一个自定义的QQ机器人。

QQ机器人功能展示

查询天气 在这里插入图片描述

微博博文 在这里插入图片描述

制作表情包 在这里插入图片描述

一、安装nonebot2

请确保你的电脑上要安装了Python的开发环境,没有安装的看这条:如何在VScode上配置Python的开发环境? 请确保你的Python版本>=3.8

nonebot2介绍: NoneBot2 是一个现代、跨平台、可扩展的 Python 聊天机器人框架,它基于 Python 的类型注解和异步特性,能够为你的需求实现提供便捷灵活的支持。

安装步骤

在电脑左下角搜索cmd并打开,接下来将在cmd输入命令来进行安装。 1、安装NoneBot2

安装 nb-cli,NoneBot2 会作为其依赖被一起安装

pip install nb-cli

2、安装驱动器

查看所有驱动器

nb driver list

输出

FastAPI () - FastAPI 驱动器 Quart (quart) - Quart 驱动器 HTTPX (httpx) - HTTPX 驱动器 websockets (websockets) - websockets 驱动器 AIOHTTP (aiohttp) - AIOHTTP 驱动器

安装HTTPX驱动器,这是我们目前所需要的

nb driver install httpx

3、安装协议适配器

查看所有协议适配器

nb adapter list

输出

OneBot V11 (nonebot-adapter-onebot) - OneBot V11 协议 钉钉 (nonebot-adapter-ding) - 钉钉协议 飞书 (nonebot-adapter-feishu) - 飞书协议 Telegram (nonebot-adapter-telegram) - Telegram 协议 QQ 频道 (nonebot-adapter-qqguild) - QQ 频道官方机器人 开黑啦 (nonebot-adapter-kaiheila) - 开黑啦协议适配 mirai2 (nonebot_adapter_mirai2) - 为 nonebot2 添加 mirai_api_http2.x的兼容 适配器 OneBot V12 (nonebot-adapter-onebot) - OneBot V12 协议 Console (nonebot-adapter-console) - 基于终端的交互式适配器 GitHub (nonebot-adapter-github) - GitHub APP & OAuth APP integration Ntchat (nonebot-adapter-ntchat) - pc hook的微信客户端适配

安装协议适配器,目前只需要onebot

nb adapter install nonebot-adapter-onebot

4、安装第三方插件

就是安装别人制作的机器人功能插件,现阶段可以不下载,之后想下哪个下哪个

查看所有发布的插件

nb plugin list

输出

nonebot物联网插件 (nonebot-plugin-iot) - 为nonebot接入物联网提供方案,目前支持天猫精灵终端,后续会增加 BWIKI助手移植版 (nonebot-plugin-bwiki-navigator) - BWIKI助手机器人Nonebot2插件移植版 漂流瓶 (nonebot-plugin-bottle) - 群与群互通的漂流瓶插件 gal角色语音生成 (nonebot-plugin-tts-gal) - 能够根据发送角色名和文本生成对应角色语音 阿里云盘福利码自动兑换 (nonebot-plugin-alicdk-get) - 基于nonebot2与aligo的阿里云盘兑换码自动获取和兑换插件。 PicStatus (nonebot-plugin-picstatus) - 服务器运行状态图片版 图灵机器人 (nonebot-plugin-tuling) - 接入图灵机器人做聊天 在线编曲 (nonebot_plugin_makemidi) - 发送简谱生成音乐 文字识别 (nonebot-plugin-ocr) - 识别图片中的文字 监听者 (nonebot-plugin-listener) - 监听指定消息并转发到指定群 BiliRequestAll (nonebot-plugin-BiliRequestAll) - 通过B站UID审核入群 真白萌自动签到 (nonebot-plugin-masiro) - 帮你每天在真白萌签到,助力成为二次元婆罗门! 轮盘禁言小游戏 (nonebot-plugin-russian-ban) - 轮盘禁言小游戏,附送快捷禁言/解禁 监测群事件 (nonebot-plugin-monitor) - 监测群成员变动、文件上传、红包运气王、管理员变动等等...

有很多,自行下载

nb plugin install

比如下载上面输出的最后一个插件——检测群事件

nb plugin install nonebot-plugin-monitor 建立一个新的机器人项目

1、新建项目

在cmd输入

nb create

回车后会出现以下界面 输入项目名称,我的是QQBot

Project Name: QQBot

哪里存储插件,这里选择src下放插件,↑键和↓键移动,回车(Enter)确定

Where to store the plugin? 2) In a "src" folder

选择哪个内置插件,这里选择echo,↑键和↓键移动,空格(Spare)选择,回车(Enter)确定,一定要你选完后面出现echo才是选中了

Which builtin plugin(s) would you like to use? echo

选择哪个适配器,这里选择OneBot V11,↑键和↓键移动,空格(Spare)选择,回车(Enter)确定,一定要你选完后面出现OneBot V11才是选中了

Which adapter(s) would you like to use? OneBot V11

和我一样选就好 填完回车后当前目录下会出现一个名为QQbot(就是你起的项目名称)的文件,打开该文件

2、修改文件配置

该文件的结构 在这里插入图片描述 跑一下bot.py 在这里插入图片描述 运行成功,接下来我们修改一下配置

.env文件 [必改]

在这里插入图片描述

原本

ENVIRONMENT=dev

修改为

ENVIRONMENT=prod

.env.prod文件 [可选] 这里是配置你连接的端口号,默认8080,想改就改,不改就不管 在这里插入图片描述

二、安装go-cqhttp

go-cqhttp介绍: 使用 mirai 以及 MiraiGo 开发的 cqhttp golang 原生实现。

安装步骤

请直接点击github地址下载go-cqhttp: 在这里插入图片描述 Windows系统直接下载go-cqhttp_windows_amd64.zip 在这里插入图片描述 下载完后解压,里面会有这三个文件 在这里插入图片描述 点击运行go-cqhttp.exe,可能会有些电脑保护不让运行,那么就在当前目录下右键,打开power shell 在这里插入图片描述 在打开的终端中输入

.\go-cqhttp.exe

在输出中选择 3 ![在这里插入图片描述](https://img-blog.csdnimg.cn/3f7e59e4a5b14a1cbd16b2b8567b5310.png

回车后会生成一个配置文件 在这里插入图片描述 此时我们的文件夹多出来的config.yml这个文件就是配置文件 在这里插入图片描述

修改配置

打开config.yml文件(可以右键直接用记事本打开) 在这里插入图片描述 最前面就是配置你的qq账号,可以不管,运行的时候就会直接扫码登陆

直接划到文件的最底下,找到反向ws配置 在这里插入图片描述

将universal修改为上图中的

ws://127.0.0.1:8080/onebot/v11/ws/

保存,退出,再次运行go-cqhttp.exe 没有配置密码直接扫码登陆 在这里插入图片描述 扫码成功登陆 在这里插入图片描述

三、使用

go-cqhttp成功登陆后不要关闭窗口,再次运行bot.py,直至连接成功 在这里插入图片描述 恭喜!!!你的机器人已经配置完成,可以运行啦!

发送

/echo 你好

测试你的机器人 在这里插入图片描述 接下来就是给你的机器人多加点功能插件,可以自己写,也可以直接用别人的(上面提到的直接在商店下载),我将在接下来的文章里讲解如何制作插件和分享我自己写的插件。 下文:【保姆级】QQ机器人插件



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3