为了账号安全,请及时绑定邮箱和手机立即绑定

Google Apps 脚本:将 Gmail 附件保存到 Google Drive

Google Apps 脚本:将 Gmail 附件保存到 Google Drive

哆啦的时光机 2021-12-23 19:55:05
我非常接近完成我的 Google Apps 脚本项目,该项目正在解析一个简单的 2 行电子邮件并将附件链接(保存到 Google 云端硬盘的附件)添加到 Google 表格。我一直坚持将电子邮件附件保存到 Google 云端硬盘。被注释掉的代码是不能正常工作的块。我举了一个例子:在 Google Drive 上保存 Gmail 附件——但它似乎对我不起作用。附上我的完整代码。function parseEmailMessages() {  var threads = GmailApp.search('label:test',0,100);  var sheet = SpreadsheetApp.openById('<<SHEET ID>>');  var folder = DriveApp.getFolderById('<<FOLDER ID>>');  var testLabel = GmailApp.getUserLabelByName('test');  var doneLabel = GmailApp.getUserLabelByName('finished');  for (var i = 0; i < threads.length; i++) {    var message = threads[i].getMessages();    for (var j in message) {      var content = message[j].getPlainBody();      /*      var attachments = threads[j].getAttachments();      for (var k in attachments) {      var attachment = attachments[k];        var isDefinedType = checkIfDefinedType_(attachment);        if (!isDefinedType) continue;        var attachmentBlob = attachment.copyBlob();        var file = DriveApp.createFile(attachmentBlob);      }      */    }    var [name, date] = content.split("\n");        function latestFile() {      var gDriveFolder = DriveApp.getFolderById('<<FOLDER ID>>');      var gDriveFile = gDriveFolder.getFiles();      var lastFileId = gDriveFile.next().getId();       return lastFileId.toString();    }    var urlStart = 'https://drive.google.com/a/<<DOMAIN>>/file/d/';    var urlString = latestFile();    var urlEnd = '/view?usp=drivesdk';        var pic = urlStart + urlString + urlEnd;    sheet.appendRow([name,date,pic]);    threads[i].removeLabel(testLabel);    threads[i].addLabel(doneLabel);  }}我收到的错误是:“TypeError:在对象 GmailThread 中找不到函数 getAttachments。”确实,文档中的 getAttachments 似乎不是 GmailThread 的一部分,但我目前不确定如何实现我的目标。
查看完整描述

1 回答

?
喵喔喔

TA贡献1735条经验 获得超5个赞

getAttachments()不是 GmailThread 类的方法。那么下面的修改呢?

从:

var attachments = threads[j].getAttachments();

到:

var attachments = message[j].getAttachments();

参考:

如果这不是直接的解决方案,我深表歉意。


查看完整回答
反对 回复 2021-12-23
  • 1 回答
  • 0 关注
  • 318 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号