Ice9Coffee / HoshinoBot

A qqbot for Princess Connect Re:Dive (and other usage :)
GNU General Public License v3.0
1.41k stars 411 forks source link

关于 Python 3.11 下无法安装依赖 peony-twitter #257

Closed cpms closed 1 year ago

cpms commented 1 year ago

pip 使用依赖名称peony-twitter[all]进行安装时,会安装另外一个模块cchardet,而这个模块在最新的 Py3.11 下无法正常编译,最终会导致依赖安装失败。 详见:https://github.com/PyYoshi/cChardet/issues/81

cchardet 已经有超过1年半没更新了,似乎无法用于 Py3.11。不过找了一下 peony-twitter 的说明,这个 cchardet 似乎是可选模块,也可以不安装 详见:https://peony-twitter.readthedocs.io/en/latest/adv_usage/install.html#adv-install

尝试使用名称peony-twitter进行最小安装的话,则可以完成依赖安装。所以如果没有其他解决办法的话,看是否需要修改一下requirements.txt里面的依赖名称以兼容最新的 python 3.11 版本。不过暂时还不知道少了这些模块有没有其他问题。

Ice9Coffee commented 1 year ago

python 3.11未经测试,我这边使用的是3.8。 cchardet是peony-twitter的aiohttp模块的依赖,而twitter模块非常依赖异步通信,应当是无法去掉这个依赖的。 cchardet那边似乎已经在着手修复这个问题了,您可以等待新版本的发布,或者使用3.8版本的python。python支持多版本共存,并不复杂。

cpms commented 1 year ago

最小化方式安装 peony-twitter 是可以正常工作的,这一段时间暂时未发现其他问题,就先这么用着了。