Ubuntu20部署Airnotifier遇pymongo方法错误求助
解决Airnotifier部署中install.py的TypeError问题
错误原因
你遇到的问题核心是适配MongoDB 6.0的新版pymongo已废弃collection_names()方法,原代码调用的这个方法在当前环境中不存在,因此触发报错。
修复步骤
- 打开
install.py文件,定位到第64行 - 将原有代码:
替换为:collection_names = masterdb.collection_names()collection_names = masterdb.list_collection_names() - 检查文件中是否还有其他类似的过时方法调用(比如
database_names()),如果有,统一替换为对应的新方法list_database_names()
额外兼容建议
Airnotifier 3.x的官方文档基于旧版本MongoDB编写,和MongoDB 6.0存在版本适配差异。如果替换方法后仍有其他报错,建议指定安装兼容的pymongo版本,比如适配Python 3.8和MongoDB 6.0的4.0.x系列,执行命令:
pip install pymongo==4.0.2
内容的提问来源于stack exchange,提问作者Amira Elsayed Ismail
相关产品推荐
相关产品推荐

