繁体   English   中英

损坏的 DAG:使用 AWS Airflow Managed Service 时没有名为“psycopg2”的模块

Broken DAG: No module named 'psycopg2' when using AWS Airflow Managed Service

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我正在尝试按以下方式在 AWS Airflow Managed Service 的 DAG 中使用 PostgresHook:

from airflow.hooks.postgres_hook import PostgresHook

使用此服务的 Airflow 版本是 1.10.12,但是当我上传此 DAG 时,Airflow UI 会显示“Broken DAG:No module named 'psycopg2'”错误。

我用这些模块定义了 requirements.txt 文件,但似乎没有一个工作:

psycopg2-binary
psycopg2
tableauserverclient
google-auth
botocore
apache-airflow[postgres]

有谁知道是否有解决此问题的方法? AWS 论坛页面中没有太多相关信息。

1 个回复

我在 MWAA 中使用 psycopg2 没有问题。

在我的要求中,我只有 psycopg2-binary 而不是 psycopg2。

这是我喜欢用来列出安装在我的 MWAA 气流环境中的所有 pip 包的 dag:

import os
from datetime import timedelta

from airflow import DAG
from airflow.operators.bash_operator import BashOperator
from airflow.utils.dates import days_ago

DAG_ID = os.path.basename(__file__).replace('.py', '')

DEFAULT_ARGS = {
    'owner': 'Louis',
    'depends_on_past': False,
    'email_on_failure': False,
    'email_on_retry': False
}

with DAG(
        dag_id=DAG_ID,
        default_args=DEFAULT_ARGS,
        description='Print all installed Python packages',
        dagrun_timeout=timedelta(hours=2),
        start_date=days_ago(1),
        schedule_interval=None,
        tags=['bash']
) as dag:
    list_python_packages_operator = BashOperator(
        task_id='list_python_packages',
        bash_command='python3 -m pip list'
    )

list_python_packages_operator

希望它有助于调试您的问题。

2 MWAA(aws 管理气流)在使用 CLI 时未能暂停 DAG

我正在尝试按照此处所述暂停 DAG,但即使 DAG 存在,也会收到“未找到 Dag id testDag”。 错误消息说我的第 3 方模块“未找到”,即使它在我触发 DAG 时工作。 我在文档上看到了这个: 注意 如果 DAG 使用依赖于通过 requirements.txt 安装的包的插 ...

3 没有名为“psycopg2”的模块

我使用 pip 安装了 psycopg2 将我的设置调整为: 当我尝试运行服务器时: 导入 psycopg2 作为数据库导入错误: 没有名为“psycopg2”的模块 所以我再次运行并得到: python -m pip install psycopg2 要求已经满足(使用 ...

4 没有名为 psycopg2 的模块

我有一个使用 postgresql 9 的 Django 项目。我安装了 psycopg2,当我运行项目时,我收到“加载 psycopg2 模块时出错:dll 加载失败”。 我第一次遇到这个问题。 我有带有 python2.7 的 Windows 7 x64。 我该如何解决这个问题? ...

8 没有名为psycopg2的模块和请求

我在Mac(Sierra)中运行QGIS,但由于此错误而无法加载处理插件: 从此链接中找到了类似的帖子: [链接到上一篇文章]( ImportError:没有名为请求的模块 ) 当我在Python窗口中键入import requests并import psycopg2时,我没 ...

10 导入错误:没有名为“psycopg2”的模块

我已经安装了依赖sudo apt-get build-dep python-psycopg2 ,然后在安装psycopg2与sudo pip install psycopg2 ,甚至与easy_install psycopg2 。 但即使在这一切之后,如果我运行python3 code.py我得到 ...

2015-03-06 14:31:56 5 23104   python
暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM