7.2 KiB
		
	
	
	
	
	
	
	
			
		
		
	
	sidebar_position, description
| sidebar_position | description | 
|---|---|
| 0 | nonebot 模块 | 
nonebot
本模块主要定义了 NoneBot 启动所需函数,供 bot 入口文件调用。
快捷导入
为方便使用,本模块从子模块导入了部分内容,以下内容可以直接通过本模块导入:
on=>onon_metaevent=>on_metaeventon_message=>on_messageon_notice=>on_noticeon_request=>on_requeston_startswith=>on_startswithon_endswith=>on_endswithon_fullmatch=>on_fullmatchon_keyword=>on_keywordon_command=>on_commandon_shell_command=>on_shell_commandon_regex=>on_regexon_type=>on_typeCommandGroup=>CommandGroupMatchergroup=>MatcherGroupload_plugin=>load_pluginload_plugins=>load_pluginsload_all_plugins=>load_all_pluginsload_from_json=>load_from_jsonload_from_toml=>load_from_tomlload_builtin_plugin=>load_builtin_pluginload_builtin_plugins=>load_builtin_pluginsget_plugin=>get_pluginget_plugin_by_module_name=>get_plugin_by_module_nameget_loaded_plugins=>get_loaded_pluginsget_available_plugin_names=>get_available_plugin_namesrequire=>require
def get_driver()
- 
说明
获取全局 Driver 实例。
可用于在计划任务的回调等情形中获取当前 Driver 实例。
 - 
参数
empty
 - 
返回
 - 
异常
- ValueError: 全局 Driver 对象尚未初始化 (nonebot.init 尚未调用)
 
 - 
用法
driver = nonebot.get_driver() 
def get_adapter(name)
- 
说明: 获取已注册的 Adapter 实例。
 - 
重载
1.
(name) -> Adapter- 
参数
name(str)
 - 
返回
 
2.
(name) -> A- 
参数
name(type[A])
 - 
返回
- A
 
 
 - 
 - 
返回
指定名称或类型的 Adapter 对象
 - 
异常
- 
ValueError: 指定的 Adapter 未注册
 - 
ValueError: 全局 Driver 对象尚未初始化 (nonebot.init 尚未调用)
 
 - 
 - 
用法
from nonebot.adapters.console import Adapter adapter = nonebot.get_adapter(Adapter) 
def get_adapters()
- 
说明: 获取所有已注册的 Adapter 实例。
 - 
参数
empty
 - 
返回
 - 
异常
- ValueError: 全局 Driver 对象尚未初始化 (nonebot.init 尚未调用)
 
 - 
用法
adapters = nonebot.get_adapters() 
def get_app()
- 
说明: 获取全局 ReverseDriver 对应的 Server App 对象。
 - 
参数
empty
 - 
返回
- Any: Server App 对象
 
 - 
异常
- 
AssertionError: 全局 Driver 对象不是 ReverseDriver 类型
 - 
ValueError: 全局 Driver 对象尚未初始化 (nonebot.init 尚未调用)
 
 - 
 - 
用法
app = nonebot.get_app() 
def get_asgi()
- 
说明: 获取全局 ReverseDriver 对应 ASGI 对象。
 - 
参数
empty
 - 
返回
- Any: ASGI 对象
 
 - 
异常
- 
AssertionError: 全局 Driver 对象不是 ReverseDriver 类型
 - 
ValueError: 全局 Driver 对象尚未初始化 (nonebot.init 尚未调用)
 
 - 
 - 
用法
asgi = nonebot.get_asgi() 
def get_bot(self_id=None)
- 
说明
获取一个连接到 NoneBot 的 Bot 对象。
当提供
self_id时,此函数是get_bots()[self_id]的简写; 当不提供时,返回一个 Bot。 - 
参数
self_id(str | None): 用来识别 Bot 的 Bot.self_id 属性
 - 
返回
 - 
异常
- 
KeyError: 对应 self_id 的 Bot 不存在
 - 
ValueError: 没有传入 self_id 且没有 Bot 可用
 - 
ValueError: 全局 Driver 对象尚未初始化 (nonebot.init 尚未调用)
 
 - 
 - 
用法
assert nonebot.get_bot("12345") == nonebot.get_bots()["12345"] another_unspecified_bot = nonebot.get_bot() 
def get_bots()
- 
说明: 获取所有连接到 NoneBot 的 Bot 对象。
 - 
参数
empty
 - 
返回
- dict[str, Bot]: 一个以 Bot.self_id 为键,Bot 对象为值的字典
 
 - 
异常
- ValueError: 全局 Driver 对象尚未初始化 (nonebot.init 尚未调用)
 
 - 
用法
bots = nonebot.get_bots() 
def init(*, _env_file=None, **kwargs)
- 
说明
初始化 NoneBot 以及 全局 Driver 对象。
NoneBot 将会从 .env 文件中读取环境信息,并使用相应的 env 文件配置。
也可以传入自定义的
_env_file来指定 NoneBot 从该文件读取配置。 - 
参数
- 
_env_file(DotenvType | None): 配置文件名,默认从.env.{env_name}中读取配置 - 
**kwargs(Any): 任意变量,将会存储到 Driver.config 对象里 
 - 
 - 
返回
- None
 
 - 
用法
nonebot.init(database=Database(...)) 
def run(*args, **kwargs)
- 
说明: 启动 NoneBot,即运行全局 Driver 对象。
 - 
参数
- 
*args(Any): 传入 Driver.run 的位置参数 - 
**kwargs(Any): 传入 Driver.run 的命名参数 
 - 
 - 
返回
- None
 
 - 
用法
nonebot.run(host="127.0.0.1", port=8080)