NoneBot+Lagrange搭建qq机器人保姆级别教程

NoneBot+Lagrange搭建qq机器人保姆级别教程

前言

因为一些原因,go-cqhttp不一定能使用,gocq的作者也是呼吁大家尽快转移到无头NTQQ项目当中去,其中就有很多优秀的平替作品,如:NapNeko/NapCatQQ: 基于NTQQ的无头Bot框架 (github.com)还有今天要介绍的LagrangeDev/Lagrange.Core: An Implementation of NTQQ Protocol, with Pure C#, Derived from Konata.Core (github.com)

准备工作

  1. 一台电脑或服务器(服务器搭建bot的教程后面会出)
  2. Lagrange程序
  3. python3.9及以上版本
  4. nonebot插件

1.关于操作系统

可供选择的操作系统:

  1. Windows
  2. Linux
  3. MacOS

2.Lagrange程序下载

首先是程序下载链接:Releases · LagrangeDev/Lagrange.Core (github.com)

根据操作系统不同选择不同的版本

1.Windows

根据系统架构选择版本,我的是64位操作系统就选择我圈起来的

解压压缩包,获得程序本体,将程序本体移动到项目文件夹,这里我移动到Bot2文件夹,双击运行程序出现下面的界面

使用要做bot账号的qq扫描二维码,成功扫描后会在程序同级目录下生成诸多文件

此时我们需要修改 appsettings.json 配置文件,粘贴以下内容进配置文件

{"Logging":{"LogLevel":{"Default":"Information","Microsoft":"Warning","Microsoft.Hosting.Lifetime":"Information"}},"SignServerUrl":"https://sign.lagrangecore.org/api/sign/25765","MusicSignServerUrl":"","Account":{"Uin":0,"Password":"","Protocol":"Linux","AutoReconnect":true,"GetOptimumServer":true},"Message":{"IgnoreSelf":true,"StringPost":false},"QrCode":{"ConsoleCompatibilityMode":false},"Implementations":[{"Type":"ReverseWebSocket","Host":"127.0.0.1","Port":8080,"Suffix":"/onebot/v11/ws","ReconnectInterval":5000,"HeartBeatInterval":5000,"AccessToken":""}]}

修改完成后重新启动程序,至此Lagrange的安装以及配置已经完成

2.Linux/MacOS

同样的选择对应系统架构的版本

获得压缩包后将压缩包放到项目文件夹中使用 tar -xvf 压缩包名称 命令来解压压缩包,与window相同,将解压出来的可执行文件放到项目根目录(MacOS同理)

获得可执行文件后先给程序赋予权限(可选,推荐进行这一步)

chmod +x ./Lagrange.OneBot 

赋予权限后运行程序

./Lagrange.OneBot 

剩下的步骤和windows一致扫描二维码以及修改配置文件,这里不过多赘述

2.NoneBot框架搭建

1.安装官方手脚架

注意: python版本要大于或等于3.9,nonebot仅支持3.9及以上版本

Windows和Linux一样,都打开命令行(Windows是cmd)输入以下命令

pip install nb-cli 

安装完成后输入 pip list 查看列表中是否有nb-cli

2.使用手脚架创建项目

确认手脚架安装完毕我们开始创建项目

输入以下命令

nb create 

我个人比较习惯simple模板因为旧版nonebot就是simple模板,这里按照个人喜好进行选择,用键盘上下键选择,选择完毕后回车

这里需要输入项目名称,大家随便取,这里我就取名test,取好名字就回车

这里让我们选择适配器,我们选择OneBotV11使用方向键选择,空格确定然后回车

这里选择驱动器,默认选择了fastapi直接回车就行

这里选择插件存储位置,选择src然后回车

是否安装依赖,填y回车

是否创建虚拟环境,我这里有虚拟环境所以填n,有小伙伴可能不知道虚拟环境是什么,可以去百度一下,反正就是为了让项目依赖不混乱的

要使用哪些内置插件,可以不选择直接回车

如果安装顺利你会看到以下界面

根据提示的命令我们运行框架,如果前面的步骤进行顺利会看到以下界面,connection open 代表框架已经和Lagrange握手链接,至此我们的qqbot已经搭建完成

3.测试Bot是否正常

如果想要测试bot是否启动正常可以在 src/plugins 目录下新建 test.py 文件写入以下内容

''' Author: 萌新源 Date: 2024-08-07 18:14:19 LastEditTime: 2024-08-08 23:15:31 LastEditors: 萌新源 Description: 测试bot是否正常启动 个性签名:敲代码就仨字,我乐意 '''from nonebot import on_regex from nonebot.typing import T_State from nonebot.adapters.onebot.v11 import GroupMessageEvent, Bot, Message Test = on_regex(pattern=r'^测试$',priority=1)@Test.handle()asyncdefTest_send(bot: Bot, event: GroupMessageEvent, state: T_State): msg ="Bot启动正常"await Test.finish(message=Message(msg))

在bot所在群聊发送测试如果看到bot回复Bot启动正常那么恭喜你你成功搭建了一个qq机器人

结尾

qq交流群:934541995

好了,至此你已经学会如何搭建一个属于自己的qq机器人了,如果本文章有帮助到你可以给我一个一键三连吗,谢谢

后续我也会考虑写nonebot插件开发教程,具体看呼声大不大了

最后感谢您的耐心阅读,我们下期再见

Read more

智能家居集成终极指南:快速掌握设备连接与自动化配置

智能家居集成终极指南:快速掌握设备连接与自动化配置 【免费下载链接】XiaomiGateway3Control Zigbee, BLE and Mesh devices from Home Assistant with Xiaomi Gateway 3 on original firmware 项目地址: https://gitcode.com/gh_mirrors/xia/XiaomiGateway3 还在为智能设备无法统一管理而困扰吗?本指南将带你彻底解决设备连接难题,轻松实现家庭自动化系统的完美整合。无论你是智能家居新手还是有一定经验的用户,都能在这里找到实用的解决方案。 🔍 常见问题与解决方案 问题一:设备无法被发现怎么办? 场景描述:添加新设备时,系统总是提示"未发现设备",让人十分困扰。 解决方案: 1. 确保网关与Home Assistant在同一局域网内 2. 检查设备是否处于配对模式 3. 重启网关和路由器

By Ne0inhk

基于单片机的智能家居智能雨水自动关窗控制系统设计

1、基于单片机的智能家居智能雨水自动关窗控制系统设计 点击链接下载prrotues仿真设计资料:https://download.ZEEKLOG.net/download/m0_51061483/91926411 1.1 课题背景与研究意义 随着智能家居技术的不断发展,家庭自动化系统逐渐成为现代住宅的重要组成部分。传统窗户多依赖人工开启与关闭,在突发降雨或天气变化时容易因无人值守而导致雨水进入室内,造成家具、电器及室内装修损坏。因此,设计一种能够自动感知雨水并及时关闭窗户的智能控制系统具有重要的现实意义。 本系统以52系列单片机为核心控制单元,结合湿度传感器、温湿度传感器、电机驱动模块、报警模块以及LM016L液晶显示模块,构建一套完整的智能雨水自动关窗控制系统。系统不仅能够实现雨水自动检测与窗户自动关闭,还支持手动与自动模式切换、阈值参数设置以及异常报警功能,具有良好的实用性与扩展性。 2、系统总体功能设计 2.1 雨水自动检测与关窗控制功能 系统通过雨水湿度传感器实时采集环境湿度信息。当检测值超过预设阈值时,单片机立即发出控制信号,驱动电机模块关闭窗户,从而防止

By Ne0inhk
TwinRL-VLA:基于数字孪生的强化学习在现实世界机器人操作中的应用

TwinRL-VLA:基于数字孪生的强化学习在现实世界机器人操作中的应用

26年2月来自北大、Simplexity Robotics、清华和港科大的论文“TwinRL-VLA: Digital Twin-Driven Reinforcement Learning for Real-World Robotic Manipulation”。 尽管视觉-语言-动作(VLA)模型具有强大的泛化能力,但仍受限于专家演示的高昂成本和现实世界交互的不足。在线强化学习(RL)在改进通用基础模型方面展现出潜力,但将其应用于现实世界中的VLA操作仍受到探索效率低下和探索空间受限的制约。系统的真实世界实验看到,在线RL的有效探索空间与监督微调(SFT)的数据分布密切相关。基于此,TwinRL框架,旨在扩展和指导VLA模型探索的数字孪生-现实世界协同强化学习。首先,利用智能手机拍摄的场景高效地重建高保真数字孪生,从而实现真实环境和模拟环境之间逼真的双向迁移。在SFT预热阶段,引入一种利用数字孪生扩展探索空间的策略,以拓宽数据轨迹分布的支持范围。基于这种增强的初始化方法,提出一种从仿真-到-真实的引导式探索策略,以进一步加速在线强化学习。具体而言,TwinRL 在部署之前,在数字孪

By Ne0inhk

带可二次开发的管理配置端 + 非低代码 + 原生支持标准化 Skill框架选择

「带可二次开发的管理配置端 + 非低代码 + 原生支持标准化 Skill」的开源 Agent 框架,筛选 3款完全匹配的框架(均为代码级可扩展、自带 Skill 管理后台、支持 SKILL.md/MCP 标准),附核心特性、二次开发要点和部署步骤,都是企业级/开发者友好的选型: 一、首选:LangGraph + LangServe(LangChain 官方生态,Python 栈,极致可扩展) 核心定位 LangChain 官方推出的「Agent 编排 + 服务化」框架,自带可二次开发的 Skill/Tool 管理后台(LangServe Dashboard),纯代码开发、无低代码封装,是 Python 生态的最佳选择。 关键特性

By Ne0inhk