使用google Script导出指定的电子邮件正文到google表单

Export specified e-mail body to google sheets using Google Script

本文关键字:google 电子邮件 正文 表单 Script 使用      更新时间:2023-09-26

我正在尝试使用Google Apps script构建一个脚本,该脚本将识别我的收件箱中指定的消息并将其正文内容转移到Google sheets中。

我一整天都在尝试让它工作(初学者),并参考了之前的[这个解决方案][1]以及许多其他方法,但我仍然不能让它按照我想要的方式工作。

下面是我到目前为止写的一些代码。

基本上我想让它:

  • 通知来自指定标签的传入电子邮件
  • 将指定的电子邮件(发件人/主题行)正文复制到google工作表中的空行
  • 将电子邮件移至垃圾箱
  • 重复下一封电子邮件,并将正文粘贴到前一封电子邮件的下一行。

目前函数process1(message)不工作,因为命令appendRow(body)不被识别。

感谢您的反馈。

谢谢。

        function getemails() {
    /* This enables the script to access the specified label, in this case "Your Chosen Label" */

var label = GmailApp.getUserLabelByName("Your Chosen Label");
 var threads = label.getThreads();
         for (var i = 0; i < threads.length; i++) { 
     var messages=threads[i].getMessages();  
         for (var j = 0; j < messages.length; j++) {
             /*this, tells the script what subject lines I am after: */
       var message=messages[j];
       var subject = message.getSubject();
           if(subject=="Your chosen Subject Line")
               process1(message);
     }
     }
       function process1(message) {
     var body =message.getBody();
     var id = "Spreadsheet ID";
     var ss = SpreadsheetApp.openById(id);
     var sheet = ss.getActiveSheet();
     sheet.appendRow(body);
     deleteMessage(message);           
    }  
    function deleteMessage(message){
     message.moveToTrash();
    }

  [1]: http://stackoverflow.com/questions/11857494/import-emails-that-fit-criteria-to-google-spreadsheet-using-apps-script

查看官方文档中的appendRow。它不接受字符串参数,它接受一个元素数组。所以如果你通过[身体],它就会起作用。最好传递像[date,from,subject, body, label]这样的内容

相关文章: