簡體   English   中英

無法使 airflow AWS 連接工作“ModuleNotFoundError:沒有名為‘airflow.providers.amazon’的模塊”

[英]Can't get airflow AWS connection to work "ModuleNotFoundError: No module named 'airflow.providers.amazon"

我一直在嘗試運行一個簡單的 Airflow DAG 來顯示 s3 存儲桶中的內容,但我不斷收到此錯誤: ModuleNotFoundError: No module named 'airflow.providers.amazon'

我已經嘗試了類似問題中推薦的幾個 pip 安裝,但仍然沒有運氣。 這是 python 腳本,下面是我的 Airflow 網絡服務器的屏幕截圖,顯示了錯誤消息。 注意我使用的是 Airflow 版本 2.5.0

import datetime
import logging

from airflow import DAG
from airflow.models import Variable
from airflow.operators.python_operator import PythonOperator
from airflow.hooks.S3_hook import S3Hook

def list_keys():
    hook = S3Hook(aws_conn_id='aws_credentials_old')
    bucket = Variable.get('s3_bucket')
    prefix = Variable.get('s3_prefix')
    logging.info(f"Listing Keys from {bucket}/{prefix}")
    keys = hook.list_keys(bucket, prefix=prefix)
    for key in keys:
        logging.info(f"- s3://{bucket}/{key}")


dag = DAG(
        'lesson1.exercise4',
        start_date=datetime.datetime.now())

list_task = PythonOperator(
    task_id="list_keys",
    python_callable=list_keys,
    dag=dag
)

在此處輸入圖像描述

您可以嘗試安裝 backport-providers-amazon package,因為它僅在 Airflow 主分支中可用。

pip install apache-airflow-backport-providers-amazon

在這里您可以找到更多信息。 https://pypi.org/project/apache-airflow-backport-providers-amazon/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM