首页 > Python资料 博客日记
Napcat社区资源:NcatBot
2025-01-12 02:00:06Python资料围观58次
👋这是NcatBot的官方文档
NcatBot是一个使用Python语言编写的QQ框架项目,它是基于NapCat.QQ创建的,所以你需要知道,只有处于NapCat.QQ环境下,你才可以正常使用NcatBot哦~
如果你想创建一个自己的QQ机器人,可以尝试使用我们的项目。
NcatBot是一个开源的基于Napcat.QQ开发的PythonSDK,使用python调用QQ。
使用简单的代码,你就可以完成一个能够处理所有信息的QQ机器人。
你还可以使用别人编写的插件!!!
关注我们的项目: 基于Python的QQ框架
快速开始
在创建一个属于你的QQ机器人前,你需要完成以下前置任务:
- 安装了可以使用的 NapCat,打开正向WS端口(必选)和HTTP端口(可选)
- 从 Github 或者 Gitee 中下载项目到本地
- 当你了解了这些之后,你可以进行一些简单的操作,例如监听消息并进行回复,当你学会了简单的操作,你可以尝试自己编写插件或者开始使用其他开发者们发布在插件市场的插件了,NcatBot的插件系统对比其他项目来说,对于开发者们和使用者们都是更加简单易懂的~
可以通过本命令安装ncatbot:
git clone https://github.com/liyihao1110/NcatBot.git
TODO:后续将添加镜像或国内站点支持。
当然你也可以使用pip来进行下载:
pip install ncatpy
NapCat配置
NapCat是整个项目的核心,只有配置了正确的配置,你的QQ机器人才可以正常运行,为了大家更加方便地使用ncatbot,我们特意准备了针对ncatbot的启动器。
- 你需要在QQ群:💬 NcatBot/ฅ•ﻌ•ฅ🎉里面获取专属启动器
- 打开启动器,进行配置
- 进行第一次QQ登入,登入后会载入
- 点击后会打开配置界面,因为目前ncatbot只支持正向ws和http,所以启动器只提供对应的配置,注:服务名称是保存的唯一标识,无法修改,配置好之后点击保存即可
- 开启监听
简单入门示例
首先你需要填写config.yaml文件:
ws:
Protocol: ws
ip: 127.0.0.1
port: 3001
http:
Protocol: http
ip: 127.0.0.1
port: 3000
sync: true
plugin:
xunfei:
api_url:
api_key:
model: generalv3.5
personality: You are a helpful assistant.
然后运行以下代码:
# encoding: utf-8
import ncatpy
from ncatpy import logging
from ncatpy.message import GroupMessage,PrivateMessage
_log = logging.get_logger()
class MyClient(ncatpy.Client):
async def on_group_message(self, message: GroupMessage):
_log.info(f"收到群消息,ID: {message.message.text.text}")
_log.info(message.user_id)
if message.user_id == 2793415370:
# 当提问者的QQ号是2793415370时,调用XunfeiGPT插件回答他的问题
# t = await self._XunfeiGPT.ai_response(input=message.message.text.text, group_id=message.group_id) # 单轮ai聊天
t = await self._XunfeiGPT.ai_response_history(input=message.message.text.text, info= True, group_id=message.group_id)# 多轮ai聊天,可用参数:开发者模式:info=True,历史记录次数:history_num=5
_log.info(t)
if message.message.text.text == "你好":
# 通过http发送消息
t = await message.add_text("你好,o").reply()
_log.info(t)
async def on_private_message(self, message: PrivateMessage):
_log.info(f"收到私聊消息,ID: {message.message.text.text}")
if message.message.text.text == "你好":
t = await self._api.send_msg(user_id=message.user_id, text="你好,o")
_log.info(t)
if __name__ == "__main__":
# 1. 通过预设置的类型,设置需要监听的事件通道
# intents = ncatpy.Intents.public() # 可以订阅public,包括了私聊和群聊
# 2. 通过kwargs,设置需要监听的事件通道
intents = ncatpy.Intents(group_event=True)
client = MyClient(intents=intents, plugins=["XunfeiGPT"])# 如果没有插件,则不需要添加plugins=["XunfeiGPT"]
client.run()
插件
插件是NcatBot的扩展,你可以使用别人编写的插件,也可以自己编写插件。
插件编写逻辑具体查看ncatpy/plugins/XunfeiGPT.py
编写好的插件进行pr,必须给出详细的示例和说明,目前不提供在线安装,自行安装只需要下载别人的插件,将其放入plugins文件夹即可。
我们为此提供了 插件商店 。
所有要求提在QQ群💬 NcatBot/ฅ•ﻌ•ฅ🎉里面
开发时间有限,如果有不好的地方,欢迎提issue,或者加QQ群交流。
联系我们
QQ群:💬 NcatBot/ฅ•ﻌ•ฅ🎉
标签:
相关文章
最新发布
- 光流法结合深度学习神经网络的原理及应用(完整代码都有Python opencv)
- Python 图像处理进阶:特征提取与图像分类
- 大数据可视化分析-基于python的电影数据分析及可视化系统_9532dr50
- 【Python】入门(运算、输出、数据类型)
- 【Python】第一弹---解锁编程新世界:深入理解计算机基础与Python入门指南
- 华为OD机试E卷 --第k个排列 --24年OD统一考试(Java & JS & Python & C & C++)
- Python已安装包在import时报错未找到的解决方法
- 【Python】自动化神器PyAutoGUI —告别手动操作,一键模拟鼠标键盘,玩转微信及各种软件自动化
- Pycharm连接SQL Sever(详细教程)
- Python编程练习题及解析(49题)
点击排行
- 版本匹配指南:Numpy版本和Python版本的对应关系
- 版本匹配指南:PyTorch版本、torchvision 版本和Python版本的对应关系
- Python 可视化 web 神器:streamlit、Gradio、dash、nicegui;低代码 Python Web 框架:PyWebIO
- 相关性分析——Pearson相关系数+热力图(附data和Python完整代码)
- Anaconda版本和Python版本对应关系(持续更新...)
- Python与PyTorch的版本对应
- Windows上安装 Python 环境并配置环境变量 (超详细教程)
- Python pyinstaller打包exe最完整教程