Google Apps脚本 - 从gmail特定标签读取数据会返回来自所有标签的消息

时间:2013-07-25 04:26:03

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

我的gmail中有两个用户定义的标签,名为x&年。我需要检索该特定标签中的消息,但是我从所有标签中获取数据。

我需要收到消息正文,标签和日期,并在电子表格中更新

以下是我的代码:


  var ulables = GmailApp.getUserLabels();
  for(var x=0; x < ulables.length; x++){ 
    var threads = GmailApp.getUserLabelByName(ulables[x].getName()).getThreads();

    for (var i = 0; i < threads.length; i++) {    
      var messages = threads[i].getMessages();      
      var label = ulables[x].getName();     
      for (var m = 0; m < messages.length; m++) {        
        var msg     = messages[m].getBody();
        var cmsg    = convertHtmlToText(msg);

        var subject = messages[m].getSubject();
        if(subject == reqSub){
          var recDate = Utilities.formatDate(messages[m].getDate(),"GMT","MM/dd/yyyy");
          if(isDateInRange(recDate, startDate, endDate)){

            var arr =[recDate,label,cmsg];
            mailSheet.getRange(++lastRow, 1,1,3).setValues([arr]).activate();
          }
        }
      }
    }
  }  

例如: - 标签x有10封电子邮件      标签y有10封电子邮件      收件箱有50封电子邮件

对于每个标签,我收到60封电子邮件,这是问题,但我预计会有10,10,50封电子邮件。

过去2天一直在努力,但没有成功。请帮我。非常感谢。


请告诉我详情,过去一周一直在等待。有没有办法在不使用线程的情况下获取消息?

0 个答案:

没有答案