利用 Google Ads 脚本,您可以管理和报告基于 YouTube 的视频 广告系列。您可以使用脚本 管理现有的视频广告系列、制作并管理广告组和广告, 广告系列定位条件和生成报告。但是,您不能使用脚本来 制作视频广告系列。
检索视频广告系列和广告组
您可以通过
videoCampaigns
的集合
AdsApp
对象。您
可以像平常在脚本中检索广告系列一样检索这些广告系列:
const campaignName = "My first video campaign";
const campaignIterator = AdsApp.videoCampaigns()
.withCondition(`campaign.name = "${campaignName}"`)
.get();
for (const campaign of campaignIterator) {
...
}
检索了广告系列后,您可以采取相同方式检索其广告组:
const adGroupIterator = campaign.videoAdGroups()
.withCondition(`ad_group.name = "${adGroupName}"`)
.get();
for (const adGroup of adGroupIterator) {
...
}
或者,您也可以使用 AdsApp.videoAdGroups()
方法:
const adGroupIterator = AdsApp.videoAdGroups()
.withCondition(`campaign.name = "${campaignName}" AND ad_group.name = "${adGroupName}")
.get();
for (const adGroup of adGroupIterator) {
...
}
制作视频广告
通过 Google Ads 脚本,您可以使用
videoAds()
方法
VideoAdGroup
。
您可以使用
newVideoAd()
VideoAdGroup
方法。
视频广告格式
支持的视频广告格式因视频广告系列的类型而异。为确保
您选择了合适的视频广告系列类型,请添加withCondition
通话
日期:AdvertisingChannelSubType
。
某些视频广告系列具有子类型,这些子类型会限制
。具体来说,只有 VIDEO_ACTION
个广告系列
支持VIDEO_RESPONSIVE
广告类型和VIDEO_NON_SKIPPABLE
广告系列
仅支持 NON_SKIPPABLE_INSTREAM_VIDEO_AD
广告类型。
对特定类型的广告系列进行操作的最佳方法是使用
withCondition
子句。您可以更新
AdvertisingChannelSubType
,针对感兴趣的广告系列类型:
const campaignIterator = AdsApp.videoCampaigns()
.withCondition("AdvertisingChannelSubType = VIDEO_ACTION")
.get();
不含子类型的视频广告系列支持以下视频广告格式:
- TrueView 插播广告
- TrueView 视频发现广告
- 导视广告
您可以使用 withCondition
选择以下广告系列:
const campaignIterator = AdsApp.videoCampaigns()
.withCondition("AdvertisingChannelSubType = null")
.get();
插播视频广告可以在其他视频播放前、播放过程中或播放后展示 用户可以在指定时间过后选择跳过视频发现广告可在 展示广告网络和各种 YouTube 网页,并且只在用户 主动点击广告缩略图。导视广告的时长不超过 6 秒 而且可以在 YouTube 视频上 或者合作伙伴网站和应用上的视频中展示 展示广告网络。有关每种广告类型的完整详情,请参见关于 视频广告格式。
创建广告组
您可以通过
newVideoAdGroupBuilder()
方法。您需要指定广告组类型和一个广告
。广告组类型必须是
以下,且在广告组制作完成后不可更改:
TRUE_VIEW_IN_STREAM
TRUE_VIEW_IN_DISPLAY
BUMPER
VIDEO_RESPONSIVE
(仅限VIDEO_ACTION
个广告系列)NON_SKIPPABLE_INSTREAM_VIDEO_AD
(仅限VIDEO_NON_SKIPPABLE
个广告系列)
示例:
const videoAdGroup =
videoCampaign.newVideoAdGroupBuilder()
.withAdGroupType("TRUE_VIEW_IN_STREAM")
.withName("Video Ad Group")
.build()
.getResult();
创建视频素材资源
视频广告通常需要引用视频素材资源。这决定了
播放任何内容。你不能使用脚本上传视频,但可以
关联您之前上传的现有 YouTube 视频,以便在广告中使用。
为此,您需要
Asset
(带有
YouTubeVideoAssetBuilder
。
const assetOperation = AdsApp.adAsset().newYouTubeVideoAssetBuilder()
.withName("name")
// This is the ID in the URL for the YouTube video.
.withYouTubeVideoId(youTubeVideoId)
.build();
const videoAsset = assetOperation.getResult();
制作广告
要制作新广告,请使用与广告组类型匹配的制作工具方法
(链接在 newVideoAd()
之后):
inStreamAdBuilder()
videoDiscoveryAdBuilder()
bumperAdBuilder()
responsiveVideoAdBuilder()
(仅限VIDEO_ACTION
个广告系列)nonSkippableAdBuilder()
(仅限VIDEO_NON_SKIPPABLE
个广告系列)
示例:
const videoAd = videoAdGroup.newVideoAd()
.inStreamAdBuilder()
.withAdName("Video Ad")
.withFinalUrl(
"http://www.example.com/video-ad")
// Specify the video asset created in the last step.
.withVideo(video)
.build()
.getResult();
视频定位
视频广告系列可以使用两种不同类型的相关定位。通过
VideoCampaignTargeting
表示在账号一级针对视频广告系列所做的任何定位
通常使用 AdsApp.videoCampaignTargeting()
进行访问。这个
无法通过脚本进行修改,但可以查看。
通过另一种定位类型,您可以为视频广告系列指定条件
和视频广告组。您可以使用
videoTargeting()
方法,并且提供对
适用于所有类型的肯定和否定标准的选择器和构建器
适用于该定位级别的指标通过
AdsApp.videoTargeting()
方法也可以用于在账号级别查看条件,其中包括一个
与 AdsApp.videoCampaignTargeting()
中的一组不同的条件。点赞
VideoCampaignTargeting
,您无法使用脚本管理这些条件。
以下是在广告系列中排除特定展示位置的示例:
videoCampaign.videoTargeting().newPlacementBuilder()
.withUrl("http://www.example.com")
.exclude();
受众特征标准(年龄、性别)的运作方式与
其他条件类型。新广告组制作完成后,
系统会自动创建可能的年龄和性别值,
全部定位。您可以提取现有的
对其调用 exclude()
方法,并且可以重新添加
通过查找现有的排除性定位并调用
include()
。
以下是从广告组中排除特定性别的示例:
const videoGenderIterator = videoAdGroup.videoTargeting()
.genders()
.withCondition('GenderType = "GENDER_MALE"')
.get();
if (videoGenderIterator.hasNext()) {
const videoGender = videoGenderIterator.next();
videoGender.exclude();
}