airflow.providers.ftp.operators.ftp

此模块包含 FTP operator。

FTPOperation

可用于 FTP 的操作。

FTPFileTransmitOperator

FTPFileTransmitOperator 用于在远程主机和本地之间传输文件,反之亦然。

FTPSFileTransmitOperator

FTPSFileTransmitOperator 用于在远程主机和本地之间传输文件,反之亦然。

模块内容

class airflow.providers.ftp.operators.ftp.FTPOperation[source]

可用于 FTP 的操作。

PUT = 'put'[source]
GET = 'get'[source]
class airflow.providers.ftp.operators.ftp.FTPFileTransmitOperator(*, ftp_conn_id='ftp_default', local_filepath, remote_filepath, operation=FTPOperation.PUT, create_intermediate_dirs=False, **kwargs)[source]

基类: airflow.models.BaseOperator

FTPFileTransmitOperator 用于在远程主机和本地之间传输文件,反之亦然。

此 operator 使用 FTPHook 打开 ftp 传输通道,作为文件传输的基础。

另见

有关如何使用此 operator 的更多信息,请参阅指南:FTPFileTransmitOperator

参数:
  • ftp_conn_id (str) – 来自 airflow Connections 的 ftp 连接 ID

  • local_filepath (str | list[str]) – 要获取或放置的本地文件路径。(模版化)

  • remote_filepath (str | list[str]) – 要获取或放置的远程文件路径。(模版化)

  • operation (str) – 指定操作 'get' 或 'put',默认为 put

  • create_intermediate_dirs (bool) –

    从远程复制到本地以及反向复制时创建缺失的中间目录。默认为 False。

    示例: 以下任务会将 file.txt 复制到远程主机的 /tmp/tmp1/tmp2/,同时创建 tmptmp1tmp2 (如果它们不存在)。如果未传递 create_intermediate_dirs 参数,则会因为目录不存在而出错。

    put_file = FTPFileTransmitOperator(
        task_id="test_ftp",
        ftp_conn_id="ftp_default",
        local_filepath="/tmp/file.txt",
        remote_filepath="/tmp/tmp1/tmp2/file.txt",
        operation="put",
        create_intermediate_dirs=True,
        dag=dag,
    )
    

template_fields: collections.abc.Sequence[str] = ('local_filepath', 'remote_filepath')[source]
ftp_conn_id = 'ftp_default'[source]
operation = 'put'[source]
create_intermediate_dirs = False[source]
local_filepath[source]
remote_filepath[source]
property hook: airflow.providers.ftp.hooks.ftp.FTPHook[source]

创建并返回一个 FTPHook。

execute(context)[source]

创建 operator 时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

get_openlineage_facets_on_start()[source]

返回 OpenLineage datasets。

Dataset 将具有以下结构

输入: file://hostname/path 输出 file://<conn.host>:<conn.port>/path。

class airflow.providers.ftp.operators.ftp.FTPSFileTransmitOperator(*, ftp_conn_id='ftp_default', local_filepath, remote_filepath, operation=FTPOperation.PUT, create_intermediate_dirs=False, **kwargs)[source]

基类: FTPFileTransmitOperator

FTPSFileTransmitOperator 用于在远程主机和本地之间传输文件,反之亦然。

此 operator 使用 FTPSHook 打开 ftps 传输通道,作为文件传输的基础。

另见

有关如何使用此 operator 的更多信息,请参阅指南:FTPSFileTransmitOperator

property hook: airflow.providers.ftp.hooks.ftp.FTPSHook[source]

创建并返回一个 FTPSHook。

此条目有帮助吗?