某些广告类型,例如 ImageAd 和 ResponsiveDisplayAd, 包含图片和其他媒体元素。本指南介绍如何使用 Google Ads 脚本上传和查询媒体。
上传映像
您可以使用
ImageBuilder
类,该类接受名称和图片数据。这些数据以
Blob
数据交换对象,可
云端硬盘或
网址提取。
下面的代码段显示了如何从外部网址上传图片:
let imageUrl = "http://www.example.com/example.png";
let imageBlob = UrlFetchApp.fetch(imageUrl).getBlob();
let mediaOperation = AdsApp.adMedia().newImageBuilder()
.withName("IMAGE_NAME")
.withData(imageBlob)
.build();
还可以从 Google 云端硬盘加载图片 Blob:
let imageFileId = "IMAGE_FILE_ID";
let imageBlob = DriveApp.getFileById(imageFileId).getBlob();
let mediaOperation = AdsApp.adMedia().newImageBuilder()
.withName("IMAGE_NAME")
.withData(imageBlob)
.build();
上传媒体捆绑包
媒体包是包含 HTML5 素材资源的 ZIP 归档文件,可用于
制作 HTML5 广告。
使用
MediaBundleBuilder
类,该类接受名称和文件数据。与图片一样,数据以
Blob
数据交换对象。
下面的代码段显示了如何从外部网址上传媒体捆绑包:
let mediaBundleUrl = "http://www.example.com/example.zip";
let mediaBundleBlob = UrlFetchApp.fetch(mediaBundleUrl).getBlob();
let mediaOperation = AdsApp.adMedia().newMediaBundleBuilder()
.withName("bundle name")
.withData(mediaBundleBlob)
.build();
查询媒体
可以使用
MediaSelector
。
使用
withCondition()
用于按名称、类型或其他字段过滤媒体。例如,
以下代码段可查找账号中的所有图片:
let mediaIterator = AdsApp.adMedia().media()
.withCondition("Type = IMAGE")
.get();
while (mediaIterator.hasNext()) {
let image = mediaIterator.next();
}
使用媒体制作广告
如需了解一些代码,请参阅我们的广告文章 使用附加媒体制作支持的广告的示例。