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

如何在Airflow DAG中导入stripe模块解决ModuleNotFoundError报错

错误原因

这个报错是因为Airflow的scheduler和worker运行时使用的Python环境,和你本地测试、普通AWS pipeline使用的Python环境相互独立,stripe依赖包没有安装在Airflow可访问的对应环境中。

解决方案

根据你部署Airflow的方式选择对应操作即可:

  • 原生物理机/虚拟机部署Airflow
    如果Airflow是直接安装在系统环境,直接执行安装命令:
    pip install stripe
    
    如果Airflow使用了独立的虚拟环境,需要先激活对应虚拟环境再执行上述安装命令,安装完成后重启Airflow scheduler和worker即可生效。
  • Docker部署Airflow
    自定义Airflow镜像,在Dockerfile中添加stripe安装指令,示例:
    FROM apache/airflow:2.8.0
    RUN pip install --no-cache-dir stripe
    
    使用新构建的镜像替换原有的Airflow scheduler、worker镜像,重启服务即可。
  • AWS MWAA(托管Airflow服务)部署
    在项目根目录的requirements.txt文件中添加一行:
    stripe>=6.0.0
    
    将更新后的requirements.txt同步到MWAA关联的S3存储桶,等待环境自动更新完成即可。
  • Kubernetes部署Airflow
    两种可选方案:
    1. 自定义worker镜像,在镜像中预装stripe包
    2. 若使用KubernetesExecutor,可以在DAG对应的PodTemplate中添加init容器,在任务启动前安装stripe包
  • DAG使用PythonVirtualenvOperator运行代码
    在operator参数中指定requirements包含stripe即可,示例:
    from airflow.operators.python import PythonVirtualenvOperator
    
    stripe_export_task = PythonVirtualenvOperator(
        task_id="stripe_data_export",
        requirements=["stripe>=6.0.0"],
        python_callable=your_export_function,
    )
    
验证方式

你可以在DAG中临时添加一个BashOperator,执行命令pip list | grep stripe,运行该任务后查看输出,如果能看到stripe的版本信息,说明依赖安装生效,即可正常运行你的正式任务。

内容的提问来源于stack exchange,提问作者Кристина Волошина

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 06:15:01