跨平台 Python 异步聊天机器人框架 / Asynchronous multi-platform chatbot framework written in Python
Go to file
2021-11-23 16:21:21 +08:00
.github 👷 update ci 2021-11-22 23:31:03 +08:00
archive 🐛 fix plugin publish guide typo 2021-10-03 11:07:22 +08:00
docs 🔥 remove cqhttp files 2021-11-23 16:21:21 +08:00
docs_build 🔥 remove cqhttp files 2021-11-23 16:21:21 +08:00
nonebot 🔥 remove cqhttp files 2021-11-23 16:21:21 +08:00
packages 🔥 remove cqhttp files 2021-11-23 16:21:21 +08:00
pages 👷 update ci 2021-11-22 23:31:03 +08:00
tests 🔥 remove cqhttp files 2021-11-23 16:21:21 +08:00
.editorconfig 🏷️ Add typing for cqhttp api 2020-08-26 17:47:36 +08:00
.gitignore 🙈 ignore .DS_Store 2021-05-22 11:27:16 +08:00
.prettierignore ✏️ fix issue template typo 2020-11-13 11:31:24 +08:00
.prettierrc 🎨 improve format 2021-04-05 16:35:29 +08:00
LICENSE 📄 update license 2020-12-01 10:57:00 +08:00
package-lock.json 📝 update plugin store page 2020-11-01 18:21:31 +08:00
package.json 🎨 improve format 2021-04-05 16:35:29 +08:00
poetry.lock 🔥 remove cqhttp files 2021-11-23 16:21:21 +08:00
pyproject.toml 🔥 remove cqhttp files 2021-11-23 16:21:21 +08:00
README.md 🔀 Merge master into dev 2021-10-02 17:48:56 +08:00

nonebot

NoneBot

跨平台 Python 异步机器人框架

license pypi python
cqhttp ding feishu
QQ Chat Telegram Channel Discord Server

文档 · 安装 · 开始使用 · 文档打不开?

简介

NoneBot2 是一个可扩展的 Python 异步机器人框架,它会对机器人收到的事件进行解析和处理,并以插件化的形式,按优先级分发给事件所对应的事件响应器,来完成具体的功能。

除了起到解析事件的作用NoneBot 还为插件提供了大量实用的预设操作和权限控制机制。对于命令处理,它更是提供了完善且易用的会话机制和内部调用机制,以分别适应命令的连续交互和插件内部功能复用等需求。

得益于 Python 的 asyncio 机制NoneBot 处理事件的吞吐量有了很大的保障,再配合 WebSocket 通信方式也是最建议的通信方式NoneBot 的性能可以达到 HTTP 通信方式的两倍以上,相较于传统同步 I/O 的 HTTP 通信,更是有质的飞跃。

特色

NoneBot2 的驱动框架 Driver 以及通信协议 Adapter 均可自定义,并且可以作为插件进行替换/添加

目前 NoneBot2 内置的驱动框架:

目前 NoneBot2 官方维护的协议适配:

更多:商店

即刻开始

完整文档可以在 这里 查看。

懒得看文档?下面是快速安装指南:这是坏文明

  1. (可选)使用你喜欢的 Python 环境管理工具创建新的虚拟环境。

  2. 使用 pip (或其他) 安装 NoneBot 脚手架。

    pip install nb-cli
    
  3. 使用脚手架创建项目

    nb create
    

社区资源

常见问题

教程/实际项目/经验分享

插件

此外NoneBot2 还有丰富的官方以及第三方现成的插件供大家使用:

贡献

如果你在使用过程中发现任何问题,可以 提交 issue 或自行 fork 修改后提交 pull request。

如果你要提交 pull request请确保你的代码风格和项目已有的代码保持一致遵循 PEP 8,变量命名清晰,有适当的注释。

许可证

NoneBot 采用 MIT 协议开源,协议文件参考 LICENSE

特别的,由于 mirai 使用 AGPLv3 协议并要求使用 mirai 的软件同样以 AGPLv3 协议开源,本项目 mirai 适配器部分(即 packages/nonebot-adapter-mirai 目录)以 AGPLv3 协议开源,协议文件参考 LICENSE