本文汇总了 Google Ads 脚本论坛中最常提出的问题。
常见的 JavaScript 错误
脚本运行失败,提示为“无法找到函数:FUNCTION_NAME”
这通常是因为脚本中的函数名称拼写错误。
- 检查函数名称的拼写是否正确,大小写是否正确;例如, - AdsApp.keywordz()会导致此错误,因为- keywordz不是 AdsApp 类中的有效函数。由于- keywords()函数的拼写大小写不正确,- AdsApp.Keywords()也会失败。
- 检查函数是否存在;例如, - AdsApp.keywords().next()将失败,因为- AdsApp.keywords()返回- KeywordSelector,而- next()是- KeywordIterator对象的方法。正确的代码应为- AdsApp.keywords().get().next()。
脚本运行了,但没有完成任何操作
导致此问题的最常见原因是,您有一个执行操作的函数,但您未从 main() 方法中调用该函数。当您从我们的文档中复制粘贴代码段时,通常会发生这种情况。
| 编码方案 | 代码段 | 
|---|---|
| 版本 1(不起作用) | 
function main() {
  // Call to getCampaigns is missing, so this script does nothing.
}
function getCampaigns() {
  // AdsApp.campaigns() will return all Search and Display campaigns
  // that are not removed by default.
  let campaignIterator = AdsApp.campaigns().get();
  console.log('Total campaigns found : ' +
      campaignIterator.totalNumEntities());
  while (campaignIterator.hasNext()) {
    let campaign = campaignIterator.next();
    console.log(campaign.getName());
  }
}
 | 
| 版本 2(不起作用) | 
function main() {
  // Call to getCampaigns is missing, so this script does nothing.
  function getCampaigns() {
    // AdsApp.campaigns() will return all Search and Display campaigns
    // that are not removed by default.
    let campaignIterator = AdsApp.campaigns().get();
    console.log('Total campaigns found : ' +
        campaignIterator.totalNumEntities());
    while (campaignIterator.hasNext()) {
      let campaign = campaignIterator.next();
      console.log(campaign.getName());
    }
  }
}
 | 
| 版本 3(有效) | 
function main() {
  getCampaigns();
}
function getCampaigns() {
  // AdsApp.campaigns() will return all Search and Display campaigns
  // that are not removed by default.
  let campaignIterator = AdsApp.campaigns().get();
  console.log('Total campaigns found : ' +
      campaignIterator.totalNumEntities());
  while (campaignIterator.hasNext()) {
    let campaign = campaignIterator.next();
    Logger.log(campaign.getName());
  }
}
 | 
在升级脚本时,出现“无法找到函数 getFinalUrl”错误
当您更改脚本以使其与升级后的网址搭配使用时,可能会遇到此错误。当您将对 ad.getDestinationUrl() 的调用替换为 ad.getFinalUrl() 时,就会发生此错误。getFinalUrl() 是 AdUrls 类的一部分,因此您需要将代码更改为 ad.urls().getFinalUrl():
    function main() {
      // Incorrect snippet. getFinalUrl is not a member of the Ad class.
      let ad = AdsApp.ads().get().next();
      let url = ad.getFinalUrl();
      // Correct snippet.
      let ad = AdsApp.ads().get().next();
      let url = ad.urls().getFinalUrl();
    }
我没有获得关于 X 的任何统计信息
在运行报告或调用统计信息时,您可能会遇到的一个常见错误是,无法获得有关某个特定实体或日期范围的数据。您可以尝试以下几种方法:
- 检查您要提取统计信息或运行报告的日期范围。 
- 如果您检索管理不同币种账号的 Google Ads 经理账号脚本的账号级统计信息,系统会返回以经理账号币种表示的费用。 
- Google Ads 可能还没有您要寻找的数据。如需了解详情,请参阅我们的数据新鲜度指南。 
我如何使用“X”功能?
如需查看如何使用特定功能的示例,请参阅我们的代码段和解决方案。如果您找不到合适的代码段,欢迎在 Discord 中提出请求。
仍需要支持?
如果您需要我们提供帮助,请访问获取帮助页面。