14 KiB
NoneBot
✨ 跨平台 Python 异步机器人框架 ✨
简介
NoneBot2 是一个现代、跨平台、可扩展的 Python 聊天机器人框架,它基于 Python 的类型注解和异步特性,能够为你的需求实现提供便捷灵活的支持。
特色
- 异步优先:基于 Python 的异步特性,即使是
非常大量的消息,也能吞吐自如 - 易于开发:配合 NB-CLI 脚手架,代码编写上手简单,没有过多的冗余代码,可以让开发者专注于业务逻辑
- 生而可靠:100% 类型注解覆盖,配合编辑器的类型推导功能,能将绝大多数的 Bug 杜绝在编辑器中 (编辑器支持)
- 社区丰富:社区用户众多,直接和间接用户超过十万人,每天都有大量的活跃用户 (社区资源)
- 海纳百川:一个框架,支持多个聊天软件平台,可自定义通信协议
- 坚实后盾:支持多种 web 框架,可自定义替换
- FastAPI
- Quart (异步 Flask)
- aiohttp
- httpx
- websockets
更多:概览
什么不是 NoneBot2
NoneBot2 不是某个平台或者协议的具体实现,它只负责和已有协议适配器通信,并处理接收到的事件。所以,“NoneBot 有 blabla 平台的 blabla 功能吗?”这种问题是与 NoneBot2 无关的。请在相应平台的功能文档中确认,或与相应平台的协议适配开发者联系。
NoneBot2 不是 NoneBot1 的替代品。事实上,它们都在被积极的维护着。但是,如果你想尝试一些新功能,或者想要支持更多的平台,可以考虑使用 NoneBot2。
NoneBot2 和 NoneBot1 的区别,就像是 VisualStudio Code 和 VisualStudio 一样
即刻开始
完整文档可以在 这里 查看。
懒得看文档?下面是快速安装指南:
-
(可选)使用你喜欢的 Python 环境管理工具创建新的虚拟环境。
-
使用
pip
(或其他) 安装 NoneBot 脚手架。pip install nb-cli
-
使用脚手架创建项目
nb create
社区资源
常见问题
教程/实际项目/经验分享
插件
此外,NoneBot2 还有丰富的官方以及第三方现成的插件供大家使用:
-
NoneBot-Plugin-Docs:离线文档至本地项目使用 (别再说文档打不开了!)
在项目目录下执行:
nb plugin install nonebot_plugin_docs
或者尝试以下镜像:
-
其他插件请查看 商店
许可证
NoneBot
采用 MIT
协议开源,协议文件参考 LICENSE。
贡献
如果你在使用过程中发现任何问题,可以 提交 Issue 或自行 Fork 修改后提交 Pull Request。
如果你要提交 Pull Request,请确保你的代码风格和项目已有的代码保持一致,遵循 PEP 8 与 PEP 484,变量命名清晰,有适当的注释与测试代码,并且请以 dev
分支作为 Pull Request 目标分支。
感谢以下开发者对 NoneBot2 的贡献: