zhulinyv / NJS

基于 NoneBot 的 QQ 机器人——脑积水!
https://zhulinyv.github.io/NJS
GNU Affero General Public License v3.0
108 stars 6 forks source link

🐛更新后启动时报错 #26

Closed MaboroneSeika closed 1 year ago

MaboroneSeika commented 1 year ago

确认

环境信息

问题描述

更新到最新版本后启动时报错,看更新依赖时候貌似是成功更新了html什么的还有个redis 报错的插件分别是setu和nonebot_plugin_stable_diffusion_diao github传截图不知道为什么一直不成功,只能复制出来了= =

问题截图

 [ERROR] nonebot | Failed to import "nonebot_plugin_setu4"
Traceback (most recent call last):
  File "G:\NJS-Bot\bot.py", line 31, in <module>
    nonebot.load_from_toml("pyproject.toml")
  File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\plugin\load.py", line 125, in load_from_toml
    return load_all_plugins(plugins, plugin_dirs)
  File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\plugin\load.py", line 62, in load_all_plugins
    return manager.load_all_plugins()
  File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\plugin\manager.py", line 175, in load_all_plugins
    return set(
  File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\plugin\manager.py", line 176, in <genexpr>
    filter(None, (self.load_plugin(name) for name in self.available_plugins))
> File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\plugin\manager.py", line 145, in load_plugin
    module = importlib.import_module(
  File "C:\software\Python310\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
  File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\plugin\manager.py", line 241, in exec_module
    super().exec_module(module)
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "G:\NJS-Bot\src\plugins\nonebot_plugin_setu4\__init__.py", line 8, in <module>
    from .mamager_handle import manager_handle
  File "G:\NJS-Bot\src\plugins\nonebot_plugin_setu4\mamager_handle.py", line 8, in <module>
    from .fetch_resources import download_database
  File "G:\NJS-Bot\src\plugins\nonebot_plugin_setu4\fetch_resources.py", line 7, in <module>
    from .config import config
  File "G:\NJS-Bot\src\plugins\nonebot_plugin_setu4\config.py", line 30, in <module>
    config = Config.parse_obj(get_driver().config)
  File "pydantic\main.py", line 527, in pydantic.main.BaseModel.parse_obj
    return cls(**obj)
  File "pydantic\env_settings.py", line 39, in pydantic.env_settings.BaseSettings.__init__
    super().__init__(
  File "pydantic\main.py", line 342, in pydantic.main.BaseModel.__init__
    raise validation_error
pydantic.error_wrappers.ValidationError: 2 validation errors for Config
setu_disable_wlist
  value could not be parsed to a boolean (type=type_error.bool)
setu_enable_private
  value could not be parsed to a boolean (type=type_error.bool)

 [ERROR] nonebot | Failed to import "nonebot_plugin_stable_diffusion_diao"
Traceback (most recent call last):
  File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\redis\connection.py", line 707, in connect
    sock = self.retry.call_with_retry(
  File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\redis\retry.py", line 46, in call_with_retry
    return do()
  File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\redis\connection.py", line 708, in <lambda>
    lambda: self._connect(), lambda error: self.disconnect(error)
  File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\redis\connection.py", line 1006, in _connect
    raise err
  File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\redis\connection.py", line 994, in _connect
    sock.connect(socket_address)
ConnectionRefusedError: [WinError 10061] 由于目标计算机积极拒绝,无法连接。

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "G:\NJS-Bot\bot.py", line 31, in <module>
    nonebot.load_from_toml("pyproject.toml")
  File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\plugin\load.py", line 125, in load_from_toml
    return load_all_plugins(plugins, plugin_dirs)
  File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\plugin\load.py", line 62, in load_all_plugins
    return manager.load_all_plugins()
  File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\plugin\manager.py", line 175, in load_all_plugins
    return set(
  File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\plugin\manager.py", line 176, in <genexpr>
    filter(None, (self.load_plugin(name) for name in self.available_plugins))
> File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\plugin\manager.py", line 145, in load_plugin
    module = importlib.import_module(
  File "C:\software\Python310\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
  File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\plugin\manager.py", line 241, in exec_module
    super().exec_module(module)
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "G:\NJS-Bot\src\plugins\nonebot_plugin_stable_diffusion_diao\__init__.py", line 1, in <module>
    from . import config, manage
  File "G:\NJS-Bot\src\plugins\nonebot_plugin_stable_diffusion_diao\config.py", line 357, in <module>
    redis_client = asyncio.run(main())
  File "C:\software\Python310\lib\asyncio\runners.py", line 44, in run
    return loop.run_until_complete(main)
  File "C:\software\Python310\lib\asyncio\base_events.py", line 649, in run_until_complete
    return future.result()
  File "G:\NJS-Bot\src\plugins\nonebot_plugin_stable_diffusion_diao\config.py", line 298, in main
    resp = r1.ping()
  File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\redis\commands\core.py", line 1205, in ping
    return self.execute_command("PING", **kwargs)
  File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\redis\client.py", line 1266, in execute_command
    conn = self.connection or pool.get_connection(command_name, **options)
  File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\redis\connection.py", line 1461, in get_connection
    connection.connect()
  File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\redis\connection.py", line 713, in connect
    raise ConnectionError(self._error_message(e))
redis.exceptions.ConnectionError: Error 10061 connecting to localhost:6379. 由于目标计算机积极拒绝,无法连接。.

复现步骤

正常启动

zhulinyv commented 1 year ago

请将 .env.prod 配置文件内容在下方回复

zhulinyv commented 1 year ago

setu 插件配置项填写有误:

setu_disable_wlist=Ture
setu_enable_private=Ture

这两处应为:

setu_disable_wlist=True
setu_enable_private=True

ai 绘图插件更新后用到了 redis 库, 需要额外安装 windows redis, 否则会出现上述问题, 如果没有 ai 画图的后端或不打算使用 redis, 直接卸载 redis 库即可。稍后我将会把 redis 库从必需依赖中移除。

zhulinyv commented 1 year ago

若涉及配置信息的上传, 请将自己的 api key 等隐私配置删除或替换, 防止信息被盗用。

上面回复的配置信息我先删了, 它暴露了你的隐私信息。

MaboroneSeika commented 1 year ago

好滴,谢谢大佬,递茶~