无法在 google adwords api 中获取要推送到数据库的活动数据
Posted
技术标签:
【中文标题】无法在 google adwords api 中获取要推送到数据库的活动数据【英文标题】:Unable to get campaigns data to push to database in google adwords api 【发布时间】:2018-02-07 09:28:23 【问题描述】:我在弄清楚什么是什么时遇到了一些问题,尽管有大量的文档,但我无法弄清楚这些问题
1. 应使用哪种报告类型来获取广告系列级别的总计。我正在尝试以标题格式获取数据 -campaign_id|campaign_name|点击次数|展示次数|费用|转化次数。 2.我尝试使用“CAMPAIGN_PERFORMANCE_REPORT”,但我在关键字级别获得了分解信息,但我试图在广告系列级别提取数据。 3.我还需要将数据推送到数据库。在 API 文档中,我得到了可以在我的屏幕上打印结果或者在我的机器上创建一个文件的示例。有没有一种方法可以让我以 JSON 格式获取数据以将其推送到数据库。 4.我的 MCC 帐户目前有 7 个帐户,未来几天会增加。我不想将客户客户 ID 手动硬编码到我的代码中,因为将会创建新帐户。有没有办法可以获取我的 MCC ac 上的客户客户 ID 列表
我正在尝试使用 python 作为我的代码库和 adwords api V201710 来获取这些数据。
【问题讨论】:
【参考方案1】:要检索广告系列效果数据,您需要运行 campaign_performance_report。关注this link,查看广告系列效果报告的所有可用列。
campaign performance report 不包括在关键字级别聚合的统计信息。您是否使用 AWQL 来提取您的报告?
你能把你的代码贴在这里吗,我觉得你得到关键字级别的数据很奇怪。
运行this python 示例代码以获取活动数据(您绝对不应该使用此示例代码获取关键字级别的数据)。
首先,Google AdWords API 仅返回以下文件格式 CSVFOREXCEL、CSV、TSV、XML、GZIPPED_CSV、GZIPPED_XML 的报告数据。不幸的是,您的用例不支持 JSON。我会推荐 GZIPPED_CSV 并将以下属性设置为 false: 跳过报告头 跳过列头 跳过报告摘要
这将简单地跳过报告中的所有标题、报告标题和总计,将数据插入表格非常简单。
无法输入 MCC ID 并期望 API 获取所有客户帐户的报告。每个 API 报告请求都包含客户端 ID,因此您需要创建一个包含所有客户端 ID 的数组,然后遍历每个 ID。如果您使用的是客户端库(推荐),那么您可以简单地在会话中设置 clientID,即 session.setClientCustomerId("xxx");
要自动执行此操作,请使用 ManagedCustomerService 自动检索所有客户端 ID,然后对其进行迭代,因此您无需对每个客户端 ID 进行硬编码。 Google 创建了一个方便的 python 文件,它返回包括子帐户 ID (click here) 的帐户层次结构。
最后,根据您的问题,我假设您尝试运行 ETL 流程。谷歌有一个我强烈推荐的opensource AdWords extractor。
【讨论】:
非常感谢您耐心回答问题。 1.我确实使用了campain_performance_report,但我在使用的选择器中使用了adgroup_id和关键字 3.我结合使用了csv.DictReader和json.dumps()来实现我正在使用的json结果。 4. 我成功解决了这个问题。再次感谢您的帮助。以上是关于无法在 google adwords api 中获取要推送到数据库的活动数据的主要内容,如果未能解决你的问题,请参考以下文章
无法使用 Google Adwords API 将谓词添加到选择器
无法在 google adwords api 中获取要推送到数据库的活动数据
使用 OAuth 创建 google adwords API 应用程序