用nonebot2模块创建QQ机器人,基于的原理应是反向协议,其中bot.py的代码如下:
import nonebot
from nonebot.adapters.onebot.v12 import Adapter as ONEBOT_V12Adapter
# Custom your logger
#
# from nonebot.log import logger, default_format
# logger.add("error.log",
# rotation="00:00",
# diagnose=False,
# level="ERROR",
# format=default_format)
# You can pass some keyword args config to init function
nonebot.init()
app = nonebot.get_asgi()
driver = nonebot.get_driver()
driver.register_adapter(ONEBOT_V12Adapter)
nonebot.load_builtin_plugins("single_session")
# Please DO NOT modify this file unless you know what you are doing!
# As an alternative, you should use command `nb` or modify `pyproject.toml` to load plugins
nonebot.load_from_toml("pyproject.toml")
# Modify some config / config depends on loaded configs
#
# config = driver.config
# do something...
if __name__ == "__main__":
nonebot.logger.warning("Always use `nb run` to start the bot instead of manually running!")
nonebot.run(app="__mp_main__:app")
当所有文件配置好时,按理讲最后一步就是运行这个文件了,可当运行时发生如下报错:
Traceback (most recent call last):
File "C:/Users/MacBooK/毛森/bot.py", line 5, in
from nonebot.adapters.onebot.v12 import Adapter as ONEBOT_V12Adapter
ModuleNotFoundError: No module named 'nonebot.adapters'
按照报错的意思处理后,安装'nonebot.adapters'报错如下:
ERROR: Could not find a version that satisfies the requirement nonebot.adapters (from versions: none)
ERROR: No matching distribution found for nonebot.adapters
然后就是剩下一脸懵逼的我了……求各位指点,将万分感激!
ChatGPT尝试为您解答,仅供参考
根据报错信息,你尝试安装的模块名是nonebot.adapters,但是没有找到这个模块。nonebot是一个用于创建QQ机器人的Python库,nonebot.adapters是nonebot的子模块,用于适配不同的协议和服务器。
在你的代码中,你使用了一个名为ONEBOT_V12Adapter的适配器,这个适配器应该在nonebot.adapters.onebot.v12模块中定义,而你的代码中没有这个模块,导致了错误的发生。
解决这个问题的方法是安装nonebot库。你可以使用pip命令来安装nonebot库:
pip install nonebot
安装完成后,应该就能正常运行你的代码了。
需要注意的是,nonebot库是运行在python3.7+版本中的,因此你需要确保你的Python版本是3.7以上的。
你确定适配器装好了吗?
nb adapter install nonebot.adapters.onebot.v12