airflow.providers.google.cloud.transfers.facebook_ads_to_gcs

此模块包含用于将 Facebook 广告报告传输到 GCS 的操作符。

FlushAction

Facebook 广告导出选项。

FacebookAdsReportToGcsOperator

从 Facebook 广告 API 中获取数据。

模块内容

class airflow.providers.google.cloud.transfers.facebook_ads_to_gcs.FlushAction[source]

基类: enum.Enum

Facebook 广告导出选项。

EXPORT_ONCE = 'ExportAtOnce'[source]
EXPORT_EVERY_ACCOUNT = 'ExportEveryAccount'[source]
class airflow.providers.google.cloud.transfers.facebook_ads_to_gcs.FacebookAdsReportToGcsOperator(*, bucket_name, object_name, fields, parameters=None, gzip=False, upload_as_account=False, api_version=None, gcp_conn_id='google_cloud_default', facebook_conn_id='facebook_default', impersonation_chain=None, **kwargs)[source]

基类: airflow.models.BaseOperator

从 Facebook 广告 API 中获取数据。

此操作符将数据转换为临时 JSON 文件并保存,然后将该 JSON 文件上传到 Google Cloud Storage。

另请参阅

有关 Facebook 广告 API 的更多信息,请参阅 API 文档: https://developers.facebook.com/docs/marketing-apis/

另请参阅

有关 Facebook 广告 Python SDK 的更多信息,请参阅文档: https://github.com/facebook/facebook-python-business-sdk

另请参阅

有关如何使用此操作符的更多信息,请参阅指南: FacebookAdsReportToGcsOperator

参数::
  • bucket_name (str) – 要上传到的 GCS 存储桶

  • object_name (str) – 保存对象的 GCS 路径。必须是完整文件路径(例如 path/to/file.txt

  • gcp_conn_id (str) – Airflow Google Cloud 连接 ID

  • facebook_conn_id (str) – Airflow Facebook 广告连接 ID

  • api_version (str | None) – Facebook API 版本。默认为 None。如果为 None,将使用 Facebook business SDK 的默认版本。

  • fields (list[str]) – 从 Facebook 获取的字段列表。可在 AdsInsights.Field 类中找到。 https://developers.facebook.com/docs/marketing-api/insights/parameters/v6.0

  • parameters (dict[str, Any] | None) – 确定 Facebook 查询的参数 https://developers.facebook.com/docs/marketing-api/insights/parameters/v6.0

  • gzip (bool) – 用于上传时压缩本地文件或文件数据的选项

  • upload_as_account (bool) – 选择是否按 account_id 导出文件。此参数仅在 Facebook Connection 中将 Account Id 设置为数组时有效。如果设置为 True,每个文件将以 account_id 为前缀导出到单独的文件中。如果设置为 False,所有 account_id 的数据将导出到单个文件中。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选的服务帐号,用于使用短期凭据进行模拟,或者获取列表中最后一个帐号的 access_token 所需的帐号链,该帐号将在请求中被模拟。如果设置为字符串,该帐号必须授予源帐号 Service Account Token Creator IAM 角色。如果设置为序列,列表中的身份必须授予直接前一个身份 Service Account Token Creator IAM 角色,列表中第一个帐号将此角色授予源帐号(模板化)。

template_fields: collections.abc.Sequence[str] = ('facebook_conn_id', 'bucket_name', 'object_name', 'impersonation_chain', 'parameters')[source]
bucket_name[source]
object_name[source]
gcp_conn_id = 'google_cloud_default'[source]
facebook_conn_id = 'facebook_default'[source]
api_version = None[source]
fields[source]
parameters = None[source]
gzip = False[source]
upload_as_account = False[source]
impersonation_chain = None[source]
execute(context)[source]

创建操作符时派生。

Context 是与渲染 Jinja 模板时使用的相同的字典。

有关更多 context 信息,请参阅 get_template_context。

此条目有帮助吗?