如何基于发件人获取Gmail的前500个邮件线程?
解决GmailApp按发件人获取邮件线程的问题
问题原因
你之前的代码错误是因为GmailApp.search()方法直接返回的就是邮件线程(Thread)数组,它不是Label对象,所以没有getThreads()方法。
正确实现方式
要按发件人获取前500个邮件线程,直接使用GmailApp.search()并指定结果数量即可:
单个发件人
// 获取来自指定发件人的前500个邮件线程 const inboxThreads = GmailApp.search('from:myemail@gmail.com', 0, 500);
多个发件人
如果要匹配多个发件人,用OR逻辑组合查询条件:
// 获取来自多个指定发件人的前500个邮件线程 const inboxThreads = GmailApp.search('from:email1@gmail.com OR from:email2@example.com', 0, 500);
补充说明
GmailApp.search(query, start, max)的参数说明:query:Gmail搜索语法字符串,支持所有Gmail原生搜索规则start:结果的起始索引,从0开始max:最多返回的结果数量,上限是500(GmailApp的限制)
- 如果搜索结果不足500条,会返回实际存在的所有线程
内容的提问来源于stack exchange,提问作者Borgher
相关产品推荐
相关产品推荐

