我使用Gmail API,尝试按大小查找特定的电子邮件。 我希望能够读取邮件大小。
在API site中,我找不到这种方法。
我已经看到了其他使用.js脚本的方法,但是我正在使用Google脚本,如下所示:
function label_messages_without_response() {
var emailAddress = Session.getEffectiveUser().getEmail();
//Logger.log(emailAddress);
threads = GmailApp.search("less");
var size_total = 0;
Logger.log(size_total);
for (var i = 0; i < threads.length; i++)
{
var thread = threads[i];
var lastMessage = thread.getMessages()[thread.getMessageCount()-1];
//size_total+= thread.getMessages()[0].getSubject();
Logger.log(thread.getMessages()[0].getSubject());
}
Logger.log(size_total);
}
答案 0 :(得分:1)
GmailApp.search()
检索到的电子邮件的总大小。
如果我的理解是正确的,那么该示例脚本如何?用作搜索查询的size:
,larger:
和smaller:
的大小是正文大小。在此示例脚本中,我使用了它。
function label_messages_without_response() {
var threads = GmailApp.search("less");
var size_total = 0;
for (var i = 0; i < threads.length; i++) {
var messages = threads[i].getMessages();
for (var j = 0; j < messages.length; j++) {
var mailSize = messages[j].getBody().length; // Or messages[j].getRawContent().length
size_total += mailSize;
Logger.log("Subject: %s, size: %s", messages[j].getSubject(), mailSize);
}
}
Logger.log("Total size: %s", size_total);
}
var mailSize = messages[j].getBody().length
替换为var mailSize = messages[j].getRawContent().length
。这样,就可以检索出包含正文中特殊字符,附件文件和标头的大小。