【问题标题】:Import emails that fit criteria to Google Spreadsheet using apps script使用应用程序脚本将符合条件的电子邮件导入 Google 电子表格
【发布时间】:2012-08-05 03:33:47
【问题描述】:

我想知道是否可以创建一个应用程序脚本来监控我的收件箱或 gmail 中的某个标签,并在收到电子邮件时将其导入谷歌电子表格

两者中更简单的是导入在某个标签中捕获的所有电子邮件,这很容易使用 gmail 本身的过滤器完成,所以我认为这将是更简单的选择

如果可能的话,有人可以将我链接到已经执行此操作的应用程序脚本,或者为我指出正确的开始方向吗?我对应用程序脚本有一些经验,尽管经验很少,所以请放轻松:)

【问题讨论】:

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


    【解决方案1】:

    这是一个开始的小代码,我确实将请求限制在前 10 个线程以使其简短,并使用了我拥有的标签...不要忘记在测试之前更改其名称;- )

        function getMessagesWithLabel() {
         var destArray = new Array();
          var threads = GmailApp.getUserLabelByName('Facebook').getThreads(1,10);
    
          for(var n in threads){
                var msg = threads[n].getMessages();
                var destArrayRow = new Array();
                destArrayRow.push('thread has '+threads[n].getMessageCount()+' messages');
                  for(var m in msg){
                             destArrayRow.push(msg[m].getSubject());
                   }
          destArray.push(destArrayRow);           
                }
        Logger.log(destArray);
        var ss = SpreadsheetApp.getActiveSpreadsheet();
        var sh = ss.getActiveSheet();
        if(ss.getLastRow()==0){sh.getRange(1,1).setValue('getMessagesWithLabel() RESULTS')};
        sh.getRange(ss.getLastRow()+1,1,destArray.length,destArray[0].length).setValues(destArray)
        }
    

    【讨论】:

      【解决方案2】:

      是的,可以编写一个脚本来执行您所概述的操作。 请参阅 Apps 脚本的 GmailApp documentation,了解可用于执行此操作的方法。

      【讨论】:

      • 感谢您的回复 :) 有人可以指导我导入标签 x 中电子邮件的实际内容,以便我开始使用吗?当谈到这些东西时,我是绝望的:(
      • 您可以使用 GmailApp.getInboxThreads() 然后使用 GmailThread.getLabels() 来查看属于某个标签的所有邮件。话虽如此,Stackoverflow 是一个在您遇到困难时寻求答案的论坛,而不是现成的代码。因此,您绝对应该自己尝试并在遇到困难时寻求帮助。
      猜你喜欢
      • 1970-01-01
      • 2015-03-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多