跳转到主要内容

`tap-facebook` 是一个用于从 Facebook Marketing API 提取数据的 Singer 插件,使用 Meltano SDK 构建。

项目描述

tap-facebook

Singer 插件,用于从 Facebook Marketing API 中提取数据。

使用Meltano Singer SDK构建。

功能

  • 目录
  • 状态
  • 发现
  • 关于
  • 流映射
  • 模式展平

设置

设置 必需的 默认值 描述
access_token True None 用于验证API服务的令牌
api_version False v16.0 请求数据的API版本。
account_id True None 您的 Facebook 账户 ID。
start_date False None 同步的最早记录日期
end_date False None 同步的最新记录日期
stream_maps False None 流映射功能的配置对象。更多信息请参阅流映射
stream_map_config False None 用于映射表达式中用户定义的配置值。
flattening_enabled False None 'True' 启用模式展平并自动展开嵌套属性。
flattening_max_depth False None 展平模式的最大深度。

运行 tap-facebook --about 可以获得支持的所有设置和功能的完整列表。

安装

pipx install git+https://github.com/MeltanoLabs/tap-facebook.git

配置

Meltano 变量

为了与 Meltano 一起使用,需要设置以下配置值。这些可以在 meltano.yml 中设置,通过 meltano config tap-facebook set --interactive 或通过上述 env var 映射设置。

  • access_token: 从 TAP_FACEBOOK_ACCESS_TOKEN 变量获取访问令牌
  • start_date: 开始日期
  • end_date: 结束日期
  • account_id: 从 TAP_FACEBOOK_ACCOUNT_ID 变量获取的账户 ID
  • api_version: API 版本
tap-facebook --about

Elastic 许可证 2.0

许可方授予您一项非独占的、免版税的、全球性的、不可再分发的、不可转让的使用、复制、分发、提供和准备软件派生作品的许可。

归属窗口

归属窗口是可能将转化归因于广告的时间段,我们可以在点击和查看之间设置 1 天到 7 天的这段时间

  • action_attribution_windows: 我们可以将这些变量添加到 params 中,它将具有列表类型值,接受 1d-7d 点击和 1d-7d 查看值。我们已经在 ads insights 流的 get_url_params 函数中添加了此变量

身份验证

进行 API 请求需要 Facebook 访问令牌。(有关更多信息,请参阅Facebook API 文档)

使用方法

API 限制 - 速率限制

在请求 Facebook API 时遇到速率限制将返回以下错误

400 Client Error: b'{"error":{"message":"(#80004) There have been too many calls to this ad-account. Wait a bit and try again

此错误使用Backoff 库进行处理,程序将在尝试再次调用 API 之前暂停一段随机的时间

直接执行 Tap

tap-facebook --version
tap-facebook --help
tap-facebook --config CONFIG --discover > ./catalog.json

贡献

该项目使用父子流。有关更多信息,请参阅此处

初始化您的开发环境

pipx install poetry
poetry install

创建和运行测试

tap_facebook/tests 子文件夹中创建测试,然后运行

poetry run pytest

您还可以使用 poetry run 直接测试 tap-facebook CLI 界面

poetry run tap-facebook --help

使用 Meltano 进行测试

注意: 此 tap 可在任何 Singer 环境中工作,并且不需要 Meltano。此处提供的示例仅用于方便和简化端到端编排场景。

您的项目已包含一个自定义的 meltano.yml 项目文件。打开 meltano.yml 并按照文件中列出的任何 "TODO" 项进行操作。

接下来,安装 Meltano(如果您尚未安装)和任何所需的插件

# Install meltano
pipx install meltano
# Initialize meltano within this directory
cd tap-facebook
meltano install

现在您可以使用 Meltano 进行测试和编排

# Test invocation:
meltano invoke tap-facebook --version
# OR run a test `elt` pipeline:
meltano elt tap-facebook target-jsonl

SDK 开发指南

有关如何使用 SDK 开发自己的 taps 和目标的更多信息,请参阅开发指南

项目详情


下载文件

下载您平台上的文件。如果您不确定选择哪个,请了解有关安装软件包的更多信息。

源分发

meltano_tap_facebook-0.4.0.tar.gz (20.0 kB 查看哈希值)

上传时间

构建分发

meltano_tap_facebook-0.4.0-py3-none-any.whl (26.7 kB 查看哈希值)

上传时间 Python 3

由以下支持