airflow.providers.smtp.hooks.smtp¶
在邮件中搜索特定附件并下载。
它使用 smtplib 库,该库已集成到 Python 3 中。
类¶
此 Hook 使用 SMTP 协议连接到邮件服务器。 |
模块内容¶
- class airflow.providers.smtp.hooks.smtp.SmtpHook(smtp_conn_id=default_conn_name)[source]¶
基类:
airflow.hooks.base.BaseHook
此 Hook 使用 SMTP 协议连接到邮件服务器。
注意
请使用 with 将此 Hook 作为上下文管理器调用,以自动打开和关闭与邮件服务器的连接。
- 参数:
smtp_conn_id (str) – smtp 连接 ID,包含用于验证客户端的信息。
- smtp_connection: airflow.models.connection.Connection | None = None[source]¶
- smtp_client: smtplib.SMTP_SSL | smtplib.SMTP | None = None[source]¶
- get_conn()[source]¶
登录到 smtp 服务器。
注意
请使用 with 将此 Hook 作为上下文管理器调用,以自动打开和关闭与 smtp 服务器的连接。
- 返回:
一个已授权的 SmtpHook 对象。
- 返回类型:
- send_email_smtp(*, to, subject=None, html_content=None, from_email=None, files=None, dryrun=False, cc=None, bcc=None, mime_subtype='mixed', mime_charset='utf-8', custom_headers=None, **kwargs)[source]¶
发送包含 HTML 内容的电子邮件。
- 参数:
to (str | collections.abc.Iterable[str]) – 收件人电子邮件地址或地址列表。
subject (str | None) – 电子邮件主题。如果为 None,hook 将检查连接中是否提供了指向主题文件的路径,如果未提供则抛出异常。
html_content (str | None) – HTML 格式的电子邮件正文。如果为 None,hook 将检查连接中是否提供了指向 html 内容文件的路径,如果未提供则抛出异常。
from_email (str | None) – 发件人电子邮件地址。如果为 None,hook 将检查连接中是否提供了电子邮件地址,如果未提供则抛出异常。
dryrun (bool) – 如果为 True,则不会发送电子邮件,但会执行所有其他操作。
cc (str | collections.abc.Iterable[str] | None) – 抄送收件人电子邮件地址或地址列表。
bcc (str | collections.abc.Iterable[str] | None) – 密送收件人电子邮件地址或地址列表。
mime_subtype (str) – 电子邮件的 MIME 子类型。
mime_charset (str) – 电子邮件的 MIME 字符集。
kwargs – 附加的关键字参数。
>>> send_email_smtp( 'test@example.com', 'foo', '<b>Foo</b> bar', ['/dev/null'], dryrun=True )
- property conn: airflow.models.connection.Connection[source]¶