我写了一个脚本来将电子邮件图片附件保存到Google云端硬盘中。但我每天收到超过250张(安全摄像头快照)。
脚本运行正常,但我收到以下消息:
服务在一天内被调用太多次:docslist create
循环播放线程,消息和附件后,我将附件保存为:
file = subfolder.createFile(att[z]);
是否有其他方法可以保存文件,让我可以浏览Apps脚本限制?
答案 0 :(得分:2)
问题的答案是:quota limit for a consumer account为250,除了获取其他类型的帐户外,无法解决此问题(请参阅上面链接中的配额)。
您可以做的是将所有图像存储在一个文档中,每天一个。由于文档可以包含大量图像(我甚至不知道是否存在限制......'*)
使用它甚至可能更方便。
'*: this doc for example是一个收集SO用户发布的图片的文档,这些图片是我几个月前在线投放的一种形式,而且每天都在变大(截至今天已超过200页,仍在增长) ; - )
编辑:关注您的评论:
您只需使用blob将图像附加到doc即可。下面的示例我从驱动器中获取blob,但任何blob都可以完成这项工作。
function importImage() {
var image = DriveApp.getFilesByType(MimeType.JPEG).next().getBlob()
var doc = DocumentApp.getActiveDocument()
var inlineI = doc.appendImage(image);
var width = inlineI.getWidth();
var newW = width;
var height = inlineI.getHeight();
var newH = height;
var ratio = width/height;
Logger.log('w='+width+'h='+height+' ratio='+ratio);
if(width>640){
newW = 640;
newH = parseInt(newW/ratio);
}
inlineI.setWidth(newW).setHeight(newH)
doc.appendParagraph('IMAGE size : '+width+' x '+height+' (eventually) resized to '+newW+' x '+newH+' for PREVIEW');
doc.appendHorizontalRule();
doc.saveAndClose();
}
答案 1 :(得分:0)
不完全是问题的答案,而是解决问题的另一种方法(存储通过电子邮件收到的大量文件):
我最终使用Google Apps脚本将文件上传到单独的服务器,通过Class UrlFetchApp使用POST将文件作为有效负载。