• Stars
    star
    5,724
  • Rank 7,123 (Top 0.2 %)
  • Language
    Python
  • License
    MIT License
  • Created about 4 years ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

跨平台 Python 异步聊天机器人框架 / Asynchronous multi-platform chatbot framework written in Python

nonebot

NoneBot

跨平台 Python 异步机器人框架

license pypi python codecov site pre-commit
onebot onebot telegram feishu github QQ频道
QQ Chat Group QQ Channel Telegram Channel Discord Server

文档 · 快速上手 · 文档打不开?

简介

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

特色

  • 异步优先:基于 Python 的异步特性,即使是非常大量的消息,也能吞吐自如

  • 易于开发:配合 NB-CLI 脚手架,代码编写上手简单,没有过多的冗余代码,可以让开发者专注于业务逻辑

  • 生而可靠:100% 类型注解覆盖,配合编辑器的类型推导功能,能将绝大多数的 Bug 杜绝在编辑器中 (编辑器支持)

  • 社区丰富:社区用户众多,直接和间接用户超过十万人,每天都有大量的活跃用户 (社区资源)

  • 海纳百川:一个框架,支持多个聊天软件平台,可自定义通信协议

    协议名称 状态 注释
    OneBot(仓库协议 支持 QQ、TG、微信公众号、KOOK 等平台
    Telegram(仓库协议
    飞书(仓库协议
    GitHub(仓库协议 GitHub APP & OAuth APP
    QQ 频道(仓库协议 官方接口调整较多
    钉钉(仓库协议 🤗 寻找 Maintainer(暂不可用)
    Console(仓库 控制台交互
    开黑啦(仓库协议 ↗️ 由社区贡献
    Mirai(仓库协议 ↗️ QQ 协议,由社区贡献
    Ntchat(仓库 ↗️ 微信协议,由社区贡献
    MineCraft(仓库 ↗️ 由社区贡献
    BiliBili Live(仓库 ↗️ 由社区贡献
    Walle-Q(仓库 ↗️ QQ 协议,由社区贡献
    Villa(仓库 ↗️ 米游社大别野 Bot 协议,由社区贡献
  • 坚实后盾:支持多种 web 框架,可自定义替换、组合

    驱动框架 类型
    FastAPI 服务端
    Quart(异步 Flask) 服务端
    aiohttp 客户端
    httpx 客户端
    websockets 客户端

更多:概览

什么不是 NoneBot2

NoneBot2 不是某个平台或者协议的具体实现,它只负责和已有协议适配器通信,并处理接收到的事件。所以,“NoneBot 有 blabla 平台的 blabla 功能吗?”这种问题是与 NoneBot2 无关的。请在相应平台的功能文档中确认,或与相应平台的协议适配开发者联系。

NoneBot2 不是 NoneBot1 的替代品。事实上,它们都在被积极的维护着。但是,如果你想尝试一些新功能,或者想要支持更多的平台,可以考虑使用 NoneBot2。

NoneBot2 和 NoneBot1 的区别,就像是 VisualStudio Code 和 VisualStudio 一样

即刻开始

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

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

  1. 安装 pipx

    python -m pip install --user pipx
    python -m pipx ensurepath
  2. 安装脚手架

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

    nb create
  4. 运行项目

    nb run

社区资源

常见问题

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

插件

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

许可证

NoneBot 采用 MIT 许可证进行开源

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

贡献

请参考 贡献指南

鸣谢

感谢以下开发者对 NoneBot2 作出的贡献:

More Repositories

1

nonebot

基于 OneBot 标准的 Python 异步 QQ 机器人框架 / Asynchronous QQ robot framework based on OneBot for Python
Python
2,126
star
2

aiocqhttp

A Python SDK with async I/O for CQHTTP (OneBot).
Python
280
star
3

adapter-qq

NoneBot2 QQ 适配器 / QQ adapter for nonebot2
Python
205
star
4

awesome-nonebot

NoneBot 相关资源汇总
164
star
5

nb-cli

NoneBot2 脚手架 / CLI for NoneBot2
Python
155
star
6

adapter-red

NoneBot2 基于 Red 协议 的 QQNT 适配器
Python
125
star
7

adapter-satori

NoneBot2 Satori 适配器 / Satori Protocol adapter for nonebot2
Python
82
star
8

plugin-alconna

强大的 Nonebot2 命令匹配拓展,支持富文本/多媒体解析,跨平台消息收发
Python
80
star
9

plugin-apscheduler

APScheduler Support for NoneBot2
Python
77
star
10

adapter-onebot

NoneBot2 OneBot 适配器 / OneBot adapter for nonebot2
Python
67
star
11

adapter-telegram

NoneBot2 Telegram适配器 / Telegram Adapter for NoneBot2
Python
50
star
12

discussions

NoneBot 论坛
49
star
13

plugin-test

Test frontend for nonebot v2+
Vue
47
star
14

cli-plugin-webui

Web UI for NoneBot CLI
Vue
43
star
15

adapter-console

NoneBot2 终端适配器 / Console adapter for nonebot2
Python
32
star
16

plugin-orm

SQLAlchemy support for NoneBot2
Python
30
star
17

nonebug

NoneBot2 测试框架 / NoneBot2 test framework
Python
27
star
18

adapter-feishu

NoneBot2 飞书适配器 / FeiShu (LarkSuite) adapter for nonebot2
Python
26
star
19

noneprompt

Prompt toolkit for console interaction (support async, typing)
Python
25
star
20

nonebot2-tutorial

tutorial for nonebot2
23
star
21

registry

NoneBot 插件商店测试
Vue
22
star
22

docusaurus-theme-nonepress

TypeScript
20
star
23

plugin-filehost

NoneBot2 的 HTTP 静态文件托管插件,为跨机文件传输提供解决方案 / Effortless static file hosting plugin for NoneBot2.
Python
19
star
24

adapter-discord

NoneBot2 Discord 适配器 / Discord adapter for nonebot2
Python
19
star
25

noneflow

NoneBot workflow management bot built with NoneBot
Python
18
star
26

plugin-localstore

Local Storage Support for NoneBot2
Python
17
star
27

adapter-github

GitHub adapter for nonebot2
Python
13
star
28

plugin-status

Python
12
star
29

cli-plugin-docker

docker support for nb-cli
Python
11
star
30

nonemoji

Python
11
star
31

nonetrip

一个提供NoneBot1兼容层的NoneBot2插件
Python
10
star
32

nonechat

通用控制台聊天界面
Python
9
star
33

adapter-dodo

NoneBot2 DoDo 适配器 / DoDo adapter for nonebot2
Python
8
star
34

nb-autodoc

Python API documentation tool supporting the modern PEPs and typing features.
Python
8
star
35

noneblockly

Craft NoneBot plugins with ease: Embrace low-code development through Blockly.
TypeScript
7
star
36

nonecorn

ASGI server that forked from hypercorn, with extra features beyond asgi spec
Python
6
star
37

adapter-kritor

NoneBot2 Kritor 协议适配器 / Kritor Protocol adapter for nonebot2
Python
6
star
38

plugin-sentry

Sentry Support for NoneBot2
Python
5
star
39

nonebot-anime

Bilibili番剧查询
Python
4
star
40

nonebot-alarm

自然语言定时提醒nonebot插件
Python
3
star
41

adapter-mirai

Mirai Api HTTP adapter for nonebot2
Python
3
star
42

nonebot-talk

NoneBot 研讨会演示内容归档
Vue
2
star
43

auto-changelog

Python
2
star
44

nonebot-tuling

NoneBot 图灵机器人插件
Python
2
star
45

homepage

JavaScript
1
star
46

adapter-ding

Ding adapter for nonebot2
Python
1
star
47

vuepress-theme-nonebot

Vue
1
star