以下是 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”功能?
如需查看如何使用特定功能的示例,请参阅我们的代码段和解决方案。如果您找不到合适的代码段,欢迎在论坛中提出请求。
仍需要支持?
如果您需要我们提供帮助,请访问获取帮助页面。