1

我正在使用 Google Ads 脚本。根据我的使用案例,我需要获取有关我在 Google Ads 帐户中拥有的产品的展示次数、点击次数和其他统计信息。

这些产品统计数据将在脚本中进行分析,并根据某些标准更新 Google Sheet 文档。该脚本类似于,从 Google Ads 帐户中检索所有产品(及其统计信息),查看产品展示次数和点击次数是否符合类别(30 次展示,1 次点击 = 类别“A”,20 次展示,0 次点击 = “类别 B "),确定产品类别,打开 Google Drive 上托管的 Google Sheet 并根据产品名称或 ID 更新 Sheet 中的 Category 列。

目前,我正面临Products and their statisticsGoogle Ads Account使用Ads Script. 我使用以下代码片段来查找产品,但没有找到可以帮助我实现所需结果的方法或类。我只能检索productGroups, AdGroups, and Campaigns但它们都不允许我提取单个产品。

function productGroup(){
  var prodGroupIter = AdsApp.productGroups().get();
  while (prodGroupIter.hasNext()){
    Logger.log("prodGroup: ")
    var prodGroup = prodGroupIter.next();
    Logger.log(prodGroup.getValue());
  }
}

function adGroup() {
  var adGroupIterator = AdsApp.adGroups().get();
  while (adGroupIterator.hasNext()) {
    var adGroup = adGroupIterator.next();
    Logger.log("adGroup: ")
    Logger.log(adGroup.getName());
  }
}

function campaign(){
  var campIter = AdsApp.campaigns().get();
  while (campIter.hasNext()){
    var ads = campIter.next().ads().get();
    while(ads.hasNext()){
      Logger.log(ads.next().getStatsFor("LAST_30_DAYS"));
    }
  }
}

function sheet() {
  var sheetURL = "https://docs.google.com/spreadsheets/d/1W0zhRrQa1P7qjQf0eXXw-QzdcPKAlDPiVBOcIVEfDgw/edit#gid=1428103052";
  var sheet = SpreadsheetApp.openByUrl(sheetURL);
}

function main(){
  campaign();
  adGroup();
  productGroup();
}


然后我联系了广告脚本支持团队,发现这是不可能的。但他们建议我可以使用Shopping Performance ReportProduct Partition Reportshopping_performance_viewproduct_group_view。它们是 AdWord API 的一部分,我不知道如何使用它们。

因此,我正在寻找一个Google Ads Script可以帮助我从 Googe Ads 获取产品列表(带有详细统计数据)的方法,但我一直不知道如何使用上述AdWord报告端点来做到这一点。

这是我的 Google Ads 帐户中的产品列表。它们是 107 种产品及其统计数据。 屏幕截图 - Google Ads 产品

请至少提供评论,想法和建议,我可以编写代码,但我不确定我缺少什么

4

1 回答 1

0

您应该使用AdsApp.report()方法和 GAQL(非常类似于 sql)来查询shopping_performance_view以提取有趣的数据。这里是 Ads Scripts Beta 中支持的 ES6 风格的 js 示例

const logShoppingProductsData = () => {
  const query = `
  SELECT segments.product_item_id, segments.product_custom_attribute4, metrics.clicks, metrics.impressions
  FROM shopping_performance_view
  WHERE metrics.clicks > 100 and segments.product_custom_attribute4 != "undefined"
  `
  const rows = AdsApp.report(query).rows()
  while(rows.hasNext()){
    prod = rows.next()
    Logger.log(`${prod['segments.product_item_id']}, \t ${prod['segments.product_custom_attribute']}, \t ${prod['metrics.clicks']}, \t ${prod['metrics.impressions']}`)
  }
}

function main() {
  logShoppingProductsData()
}

然后您可以使用此信息执行任何逻辑。

字段文档: https ://developers.google.com/google-ads/api/fields/v9/shopping_performance_view

查询生成器和验证器: https ://developers.google.com/google-ads/api/fields/v9/shared_set_query_builder

于 2022-01-31T13:06:44.900 回答