[英]Google Apps Script, GMail, Spreadsheets
我要达到的目的:从gmail帐户中提取符合特定条件“主题:包含此文本”的gmail帐户电子邮件,并将该电子邮件的主题附加到D列和从收到该邮件到B列的时间戳记。
到目前为止,我所拥有的:它可以选择最新的电子邮件(例如,设置为5)并附加到A列。
function parseEmailMessages(start) {
start = start || 0;
var threads = GmailApp.getUserLabelByName('Label/SubLabel').getThreads(start, 5);
var sheet = SpreadsheetApp.getActiveSheet();
for (var i = 0; i < threads.length; i++) {
// Get the first email message of a threads
var tmp,
message = threads[i].getMessages()[0],
subject = message.getSubject(),
content = message.getPlainBody();
// Get the plain text body of the email message
// You may also use getRawContent() for parsing HTML
// Implement Parsing rules using regular expressions
if (content) {
tmp = content.match(/Name:\s*([A-Za-z0-9\s]+)(\r?\n)/);
var username = (tmp && tmp[1]) ? tmp[1].trim() : 'No username';
tmp = content.match(/Email:\s*([A-Za-z0-9@.]+)/);
var email = (tmp && tmp[1]) ? tmp[1].trim() : 'No email';
tmp = content.match(/Comments:\s*([\s\S]+)/);
var comment = (tmp && tmp[1]) ? tmp[1] : 'No comment';
sheet.getRange(sheet.getLastRow(), 3).setValues(test);
//sheet.appendRow([subject]);
} // End if
} // End for loop
}
您应该修改从Gmail提取线程的方式:
var threads = GmailApp.getUserLabelByName('Label/SubLabel').getThreads(start, 5);
更改为:
var threads = GmailApp.search('subject:(contains this text) label:Label-SubLabel', start, 5);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.