大多数 Google Ads 实体提供一种 getId()
方法,用于返回其标识符。虽然 ID 在大多数情况下并非绝对必需,但在以下情况下可能会派上用场:
- 使用报告
- ID 提供了一种将报告行与实际 Google Ads 实体相关联的好方法。
- 维护与外部数据存储之间的映射
- 您自己的数据库中可能已经存储了基于 ID 的信息。
- 寻求性能方面的提升
通过 ID 来抓取通常要比其他方法更快。用于提取单个实体的代码也更加简单:
let campaigns = AdsApp.campaigns() .withIds([678678]) .get(); // vs. let campaigns = AdsApp.campaigns() .withCondition("Name='My Campaign'") .get();
唯一性
广告系列 ID 和广告组 ID 是独一无二的:任何两个广告系列或广告组都不会共用同一个 ID。不过,广告和关键字具有复合 ID:关键字的唯一标识符是其广告组 ID 和关键字 ID 的组合。同样,广告的唯一标识符是其广告组 ID 和广告 ID 的组合。这会对 selector.withIds()
的调用方式产生影响。
对于广告系列和广告组,selector.withIds()
需要一组数字:
let ids = [123123, 234234, 345345];
let campaignSelector = AdsApp.campaigns().withIds(ids);
不过,对于广告和关键字,selector.withIds()
需要一个由两个元素组成的数组,第一个元素是广告组 ID。以下代码段会从广告组中检索三个关键字:
let adGroupId = 123123;
let keywordSelector = AdsApp.keywords().withIds([
[adGroupId, 234234],
[adGroupId, 345345],
[adGroupId, 456456]
]);
抓取广告时采用相同的构造。