HibiKier / zhenxun_bot

基于 Nonebot2 和 go-cqhttp 开发,以 postgresql 作为数据库,非常可爱的绪山真寻bot
GNU Affero General Public License v3.0
3.29k stars 604 forks source link

说一下我最近安装中出现的问题和解决办法。 #1534

Open fuyang0811 opened 2 months ago

fuyang0811 commented 2 months ago

最近帮一位群友装了最新版的真寻,中间遇到挺多问题的,在这里说一下解决办法。

首先gocqhttp已经基本不在使用了,目前简单的替代品是Lagrange.OneBot,和gocqhttp差不多,配置简单。参考https://lagrangedev.github.io/Lagrange.Doc/Lagrange.OneBot/Config/

然后在poetry install 中,有两个无法安装,需要提高版本,一个是pyyaml,一个是lxml。pyyaml是因为和poetry的lock有冲突,lxml不太清楚。在经过一番尝试后,发现最简单的解决办法是提高版本。在pyproject.toml将版本修改为lxml = "5.2.1"和PyYAML = "6.0.1"就可以正常安装。

另外就是在python bot.py之后,发现大批插件无法加载,报错是pydantic.errors.PydanticImportError: BaseSettings has been moved to the pydantic-settings package. See https://docs.pydantic.dev/2.7/migration/#basesettings-has-moved-to-pydantic-settings for more details。其实是pydantic版本过高,降级为1.10.5即可。

之后会出现ImportError: cannot import name 'Optional' from 'nonebot.typing' ,这是因为nonebot较新版本做了一些修改,将nonebot-adapter-onebot退回至2.2.1,nonebot2退回到2.0.0rc3即可。

之后就可以成功运行了,接着会提示命运冠位下载失败,然后就会一直重试,我这里是拷贝了我的draw_card数据。理论上来说删除draw_card插件中的命运冠位部分即可,不过我没有进行测试。

xihuantudi commented 2 months ago

请问佬用的什么签名服务啊,我在Lagrange那边没找到群号qaq

Le7emps commented 2 months ago

非常感谢,请问佬可以分享下drawcard的相关资源吗

BECKONXD commented 2 months ago

我遇到了一个循环问题,换了ubuntu系统和python版本也是这样,求助。 Traceback (most recent call last): File "/home/zhenxun_bot/bot.py", line 1, in import nonebot File "/www/server/pyporject_evn/versions/3.10.14/lib/python3.10/site-packages/nonebot/init.py", line 140, in from .command import CommandSession, CommandGroup File "/www/server/pyporject_evn/versions/3.10.14/lib/python3.10/site-packages/nonebot/command/init.py", line 930, in from nonebot.command.group import CommandGroup File "/www/server/pyporject_evn/versions/3.10.14/lib/python3.10/site-packages/nonebot/command/group.py", line 3, in from nonebot.plugin import on_command File "/www/server/pyporject_evn/versions/3.10.14/lib/python3.10/site-packages/nonebot/plugin/init.py", line 46, in from nonebot import get_driver ImportError: cannot import name 'get_driver' from partially initialized module 'nonebot' (most likely due to a circular import) (/www/server/pyporject_evn/versions/3.10.14/lib/python3.10/site-packages/nonebot/init.py)

fuyang0811 commented 1 month ago

请问佬用的什么签名服务啊,我在Lagrange那边没找到群号qaq

它自带了一个签名,就用那个就行。

fuyang0811 commented 1 month ago

我遇到了一个循环问题,换了ubuntu系统和python版本也是这样,求助。 Traceback (most recent call last): File "/home/zhenxun_bot/bot.py", line 1, in import nonebot File "/www/server/pyporject_evn/versions/3.10.14/lib/python3.10/site-packages/nonebot/init.py", line 140, in from .command import CommandSession, CommandGroup File "/www/server/pyporject_evn/versions/3.10.14/lib/python3.10/site-packages/nonebot/command/init.py", line 930, in from nonebot.command.group import CommandGroup File "/www/server/pyporject_evn/versions/3.10.14/lib/python3.10/site-packages/nonebot/command/group.py", line 3, in from nonebot.plugin import on_command File "/www/server/pyporject_evn/versions/3.10.14/lib/python3.10/site-packages/nonebot/plugin/init.py", line 46, in from nonebot import get_driver ImportError: cannot import name 'get_driver' from partially initialized module 'nonebot' (most likely due to a circular import) (/www/server/pyporject_evn/versions/3.10.14/lib/python3.10/site-packages/nonebot/init.py)

nonebot版本不对把

Oyama-Mahiro114 commented 2 weeks ago

我这直接无法启动bot.py,提示nonebot模块找不到,但是又有安装的

Oyama-Mahiro114 commented 2 weeks ago

(zhenxun-bot-py3.9) root@iZjmaa1a1ozq5rZ:~/zhenxun_bot-main# python3 bot.py Traceback (most recent call last): File "/root/zhenxun_bot-main/bot.py", line 2, in from nonebot.adapters.onebot.v11 import Adapter File "/root/.cache/pypoetry/virtualenvs/zhenxun-bot-8W611JwV-py3.9/lib/python3.9/site-packages/nonebot/adapters/onebot/init.py", line 12, in from .v11 import Bot as V11Bot File "/root/.cache/pypoetry/virtualenvs/zhenxun-bot-8W611JwV-py3.9/lib/python3.9/site-packages/nonebot/adapters/onebot/v11/init.py", line 10, in from .event import * File "/root/.cache/pypoetry/virtualenvs/zhenxun-bot-8W611JwV-py3.9/lib/python3.9/site-packages/nonebot/adapters/onebot/v11/event.py", line 120, in class MessageEvent(Event): File "pydantic/main.py", line 205, in pydantic.main.ModelMetaclass.new File "pydantic/fields.py", line 491, in pydantic.fields.ModelField.infer File "pydantic/fields.py", line 421, in pydantic.fields.ModelField.init File "pydantic/fields.py", line 537, in pydantic.fields.ModelField.prepare File "pydantic/fields.py", line 641, in pydantic.fields.ModelField._type_analysis File "/usr/lib/python3.9/typing.py", line 852, in subclasscheck return issubclass(cls, self.origin) TypeError: issubclass() arg 1 must be a class (zhenxun-bot-py3.9) root@iZjmaa1a1ozq5rZ:~/zhenxun_bot-main#