You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

已安装apache-airflow-providers-mongo仍遇ModuleNotFoundError求助

解决airflow.providers.mongo.hooks.mongo模块找不到的问题

排查与修复步骤

1. 核对Airflow与Mongo Provider的版本兼容性

apache-airflow-providers-mongo对Airflow版本有明确要求,版本不匹配会导致模块无法识别:

  • 若provider版本≥3.0.0,要求Airflow 2.3.0及以上
  • 旧版provider对应更低的Airflow版本

执行命令确认当前版本:

# 查看Airflow版本
airflow version
# 查看Mongo Provider版本
pip show apache-airflow-providers-mongo

如果版本不兼容,按需调整:

# 例如适配Airflow 2.2.x的版本
pip install apache-airflow-providers-mongo==2.3.3

2. 确认Python环境一致性

你本地pip列表显示已安装,但Airflow可能运行在另一个Python环境(比如虚拟环境、conda环境,或者系统Python与你用的pip不属于同一环境)。

  • 查看Airflow使用的Python路径:
airflow info | grep "Python Version"
  • 查看当前pip对应的Python路径:
pip --version

如果路径不一致,切换到Airflow对应的环境重新安装:

# 示例:Airflow用python3.8,就用对应pip安装
python3.8 -m pip install apache-airflow-providers-mongo

3. 验证Provider安装路径是否在Python搜索路径中

先找到Mongo Provider的安装位置:

pip show apache-airflow-providers-mongo | grep Location

再检查该路径是否在Airflow所用Python的sys.path里:

# 运行Airflow对应的Python,执行以下代码
import sys
print(sys.path)

如果不在,可通过设置PYTHONPATH环境变量添加该路径,或者重新安装包到正确位置。

4. 清理缓存并重新安装

有时候缓存会导致安装异常,执行以下操作:

# 卸载现有包
pip uninstall -y apache-airflow-providers-mongo
# 清理pip缓存
pip cache purge
# 重新安装
pip install apache-airflow-providers-mongo

5. 直接测试导入

在Airflow使用的Python环境中运行以下代码,验证是否能正常导入:

from airflow.providers.mongo.hooks.mongo import MongoHook
print("导入成功")

如果这步成功,说明问题出在DAG的运行配置上;如果失败,继续排查环境配置。

内容的提问来源于stack exchange,提问作者Diwas Poudel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 07:42:47