插件代码太老,如果是当前环境是 Pydantic v2,导入时在这行炸了 : from pydantic import BaseSettings
以我為例,先找到这个文件/root/miniconda3/envs/bot/lib/python3.10/site-packages/nonebot_plugin_AutoRepeater/config.py
把代碼改成:
from pydantic import BaseSettings -> from pydantic_settings import BaseSettings
導入就可以成功
Logs:
03-30 11:05:45 [ERROR] nonebot | Failed to import "nonebot_plugin_AutoRepeater"
Traceback (most recent call last):
File "", line 14, in
File "/root/miniconda3/envs/bot/lib/python3.10/site-packages/nonebot/plugin/load.py", line 152, in load_from_toml
return load_all_plugins(
File "/root/miniconda3/envs/bot/lib/python3.10/site-packages/nonebot/plugin/load.py", line 69, in load_all_plugins
return manager.load_all_plugins()
File "/root/miniconda3/envs/bot/lib/python3.10/site-packages/nonebot/plugin/manager.py", line 205, in load_all_plugins
return set(
File "/root/miniconda3/envs/bot/lib/python3.10/site-packages/nonebot/plugin/manager.py", line 206, in
filter(None, (self.load_plugin(name) for name in self.available_plugins))
File "/root/miniconda3/envs/bot/lib/python3.10/site-packages/nonebot/plugin/manager.py", line 169, in load_plugin
module = importlib.import_module(self._third_party_plugin_ids[name])
File "/root/miniconda3/envs/bot/lib/python3.10/importlib/init.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 1050, in _gcd_import
File "", line 1027, in _find_and_load
File "", line 1006, in _find_and_load_unlocked
File "", line 688, in _load_unlocked
File "/root/miniconda3/envs/bot/lib/python3.10/site-packages/nonebot/plugin/manager.py", line 257, in exec_module
super().exec_module(module)
File "", line 883, in exec_module
File "", line 241, in _call_with_frames_removed
File "/root/miniconda3/envs/bot/lib/python3.10/site-packages/nonebot_plugin_AutoRepeater/init.py", line 24, in
from .data_source import *
File "/root/miniconda3/envs/bot/lib/python3.10/site-packages/nonebot_plugin_AutoRepeater/data_source.py", line 15, in
from .config import Config
File "/root/miniconda3/envs/bot/lib/python3.10/site-packages/nonebot_plugin_AutoRepeater/config.py", line 2, in
from pydantic import BaseSettings
File "/root/miniconda3/envs/bot/lib/python3.10/site-packages/pydantic/init.py", line 437, in getattr
return _getattr_migration(attr_name)
File "/root/miniconda3/envs/bot/lib/python3.10/site-packages/pydantic/_migration.py", line 304, in wrapper
raise PydanticImportError(
pydantic.errors.PydanticImportError: BaseSettings has been moved to the pydantic-settings package. See https://docs.pydantic.dev/2.12/migration/#basesettings-has-moved-to-pydantic-settings for more details.
插件代码太老,如果是当前环境是 Pydantic v2,导入时在这行炸了 : from pydantic import BaseSettings
以我為例,先找到这个文件/root/miniconda3/envs/bot/lib/python3.10/site-packages/nonebot_plugin_AutoRepeater/config.py
把代碼改成:
from pydantic import BaseSettings -> from pydantic_settings import BaseSettings
導入就可以成功
Logs:
03-30 11:05:45 [ERROR] nonebot | Failed to import "nonebot_plugin_AutoRepeater"
Traceback (most recent call last):
File "", line 14, in
File "/root/miniconda3/envs/bot/lib/python3.10/site-packages/nonebot/plugin/load.py", line 152, in load_from_toml
return load_all_plugins(
File "/root/miniconda3/envs/bot/lib/python3.10/site-packages/nonebot/plugin/load.py", line 69, in load_all_plugins
return manager.load_all_plugins()
File "/root/miniconda3/envs/bot/lib/python3.10/site-packages/nonebot/plugin/manager.py", line 205, in load_all_plugins
return set(
File "/root/miniconda3/envs/bot/lib/python3.10/site-packages/nonebot/plugin/manager.py", line 206, in
filter(None, (self.load_plugin(name) for name in self.available_plugins))