我上传了许多没有 EXIF 数据但名称中有日期的照片。谷歌相册使用上传日期对它们进行排序。我想用他们名字中的日期来修改它们。
到目前为止,我尝试使用 Drive API 更改修改日期,我可以更改它但没有使用。我也尝试修改 imageMediaMetadata.date,但它对我来说似乎是只读的。
代码:
function myFunction() {
var files = DriveApp.getFilesByName("IMG-20150402-WA0002_1.jpg")
while (files.hasNext()) {
var file = files.next();
var name = file.getName().toUpperCase();
if (name.indexOf("-WA") > -1) {
if (name.indexOf("IMG-20") == 0 || name.indexOf("VID-20") == 0) {
var y = name.substr(4, 4);
var m = name.substr(8, 2);
var d = name.substr(10, 2);
var file2 = Drive.Files.get(file.getId());
file2.imageMediaMetadata.date = y+"-"+m+"-"+d+"T12:00:00.000Z";
var file3 = Drive.Files.patch(file2, file.getId());
Logger.log(name + " no ok " + file3.imageMediaMetadata.date); // same as file2
}
}
}
我可以删除它们,修改原始文件并重新上传,但在此之前我想确定没有其他方法。
谢谢你。