airflow.providers.amazon.aws.transfers.ftp_to_s3

FTPToS3Operator

將一個或多個檔案從 FTP 伺服器傳輸到 S3。

模組內容

class airflow.providers.amazon.aws.transfers.ftp_to_s3.FTPToS3Operator(*, ftp_path, s3_bucket, s3_key, ftp_filenames=None, s3_filenames=None, ftp_conn_id='ftp_default', aws_conn_id='aws_default', replace=False, encrypt=False, gzip=False, acl_policy=None, **kwargs)[source]

基類: airflow.models.BaseOperator

將一個或多個檔案從 FTP 伺服器傳輸到 S3。

另請參閱

有關如何使用此 operator 的更多資訊,請檢視指南:FTP 到 Amazon S3 傳輸 operator

引數:
  • ftp_path (str) – FTP 遠端路徑。對於單個檔案,必須包含檔名。對於多個檔案,這是查詢檔案的路徑。

  • s3_bucket (str) – 上傳檔案(s)的目標 S3 儲存桶。

  • s3_key (str) – 目標 S3 key。對於單個檔案,必須包含檔案路徑。對於多個檔案,必須以“/”結尾。

  • ftp_filenames (str | list[str] | None) – 僅在要移動多個檔案時使用。可以傳入一個包含 ftp 路徑中存在的精確檔名的列表,或者所有檔案必須符合的字首。也可以是字串“*”以移動 ftp 路徑中的所有檔案。

  • s3_filenames (str | list[str] | None) – 僅在要移動多個檔案並希望將它們命名為與原始 ftp 檔案不同時使用。它可以是一個檔名列表或檔案字首(這將替換 ftp 字首)。

  • ftp_conn_id (str) – FTP 連線 id。用於建立與 FTP 伺服器連線的名稱或識別符號。

  • aws_conn_id (str | None) – S3 連線 id。用於建立與 S3 連線的名稱或識別符號。

  • replace (bool) – 一個標誌,用於決定是否覆蓋已存在的 key。如果 replace 為 False 且 key 已存在,則會引發錯誤。

  • encrypt (bool) – 如果為 True,檔案將由 S3 在伺服器端加密,並在 S3 中處於靜態時以加密形式儲存。

  • gzip (bool) – 如果為 True,檔案將在本地壓縮

  • acl_policy (str | None) – 指定上傳到 S3 儲存桶的檔案的預設 ACL 策略的字串。

template_fields: collections.abc.Sequence[str] = ('ftp_path', 's3_bucket', 's3_key', 'ftp_filenames', 's3_filenames')[source]
ftp_path[source]
s3_bucket[source]
s3_key[source]
ftp_filenames = None[source]
s3_filenames = None[source]
aws_conn_id = 'aws_default'[source]
ftp_conn_id = 'ftp_default'[source]
replace = False[source]
encrypt = False[source]
gzip = False[source]
acl_policy = None[source]
s3_hook: airflow.providers.amazon.aws.hooks.s3.S3Hook | None = None[source]
ftp_hook: airflow.providers.ftp.hooks.ftp.FTPHook | None = None[source]
execute(context)[source]

建立 operator 時派生。

Context 是與渲染 jinja 模板時使用的相同的字典。

有關更多上下文,請參閱 get_template_context。

此條目有幫助嗎?