使用Google Apps脚本获取电子邮件大小

时间:2019-01-13 07:50:10

标签: google-apps-script google-sheets google-api gmail-api google-apps

我写这是为了将gmail中的最后500条消息提取到电子表格中。

function myFunction() {

  var ss = SpreadsheetApp.getActiveSheet();

  var threads = GmailApp.getInboxThreads();

  for (var i=0; i<threads.length; i++)
  {
    var messages = threads[i].getMessages();

    for (var j=0; j<messages.length; j++)
    {
      var frm = messages[j].getFrom();
      var to = messages[j].getTo();
      var dat = messages[j].getDate();

      ss.appendRow([frm, to, dat])
    }
  }
}

是否可以获取每封电子邮件的大小(带附件和不带附件)?当我查看Gmail message method的文档时,没有任何我可以使用的功能。

2 个答案:

答案 0 :(得分:1)

user.messages.get返回一个user.messages.response,其中包含一个名为“ sizeEstimate”的参数

  

sizeEstimate整数消息的估计大小(以字节为单位)。

您需要记住,这是一个估计值。

答案 1 :(得分:0)

感谢@s1c0j1@TheMaster。使用此功能,我可以获得电子邮件的大小。

var size = Utilities.newBlob(messages[j].getRawContent()).getBytes().length;