【发布时间】:2020-01-15 12:49:43
【问题描述】:
我是 Google App Script 的业余爱好者。
拯救了这个对我有用但不正确的脚本。 现在只为线程的第一条消息而不是所有消息读取和 phsarse 信息。
我需要阅读、检查和表达标签的所有消息,而不仅仅是线程的第一个。 我需要脚本读取并解析所有单独的消息 位于标签上。 然后将所有内容标记为已读。
有人可以帮助我并更改代码来执行此操作吗? 我查看了 Google APP 脚本手册,我尝试了不同的方法,但我无法让它工作。
谢谢!
//var threads = GmailApp.getInboxThreads();
// Have to get data separate to avoid google app script limit!
var start = 0;
var threads = GmailApp.search("newer_than:1d AND is:unread AND label:eur OR label:desc",0,100);
var sheet = SpreadsheetApp.getActiveSheet();
var result = [];
for (var i = 0; i < threads.length; i++) {
var messages = threads[i].getMessages();
var content = messages[0].getPlainBody();
messages[0].markRead();
// implement your own parsing rule inside
if (content) {
var tmp;
tmp = content.match(/\b([A-B\d][A-B\d]{4})\b/);
var cod = (tmp && tmp[1]) ? tmp[1].trim() : 'Error';
tmp = content.match(/\b(\d+[R])/);
var prom = (tmp && tmp[1]) ? tmp[1].trim() : 'Error';
tmp = content.match(/\b(\d{2}\.\d{2}\)\b/);
var exp = (tmp && tmp[1]) ? tmp[1].trim() : 'Error';
sheet.appendRow([cod, prom, exp]);
Utilities.sleep(500);
}
}
}; ```
【问题讨论】: