【问题标题】:Google Apps Script -GmailApp.search not returning all results (some are missing)Google Apps 脚本 -GmailApp.search 未返回所有结果(有些结果丢失)
【发布时间】:2018-05-11 05:49:55
【问题描述】:

我正在寻求一些帮助,因为我进行了大量搜索并看到其他人遇到类似问题但没有解决方案。简单地说,谷歌应用程序脚本类/方法 GmailApp.search 没有返回完整的结果集,这显然不是由于限制或任何我可以看到的明显类似的东西。

非常基本的用法...我有一个 Gmail 标签,我们称它为“labelname”,其中包含 118 封邮件。当我在 www.gmail.com 上搜索并在搜索框中输入“label:labelname”时,我按预期返回了 118 个结果,但是当我运行时:GmailApp.search('label:labelname');从我的脚本中它只返回 116。

脚本搜索语法: 线程 = GmailApp.search('label:labelname');

在发现我缺少结果后,我还添加了 count 方法来验证: Logger.log(threads.length)

这也返回 116。

我删除了我的标签并将其重新添加到所有 118 和 GmailApp.search 仍然只找到 116。 我将我的标签添加到另一条消息中并再次测试,现在 gmail.com 上的标签为 119,脚本结果中的标签为 117。仍然缺少相同的 2 条消息。

可能是什么?他们对于丢失的 2 条消息没有什么明显的不同。与其他人在同一日期发送相同的文件夹、相同的标签、相同样式的消息。

这是什么原因造成的?

非常感谢您的任何建议!


【问题讨论】:

  • 您在搜索 messages 还是 threads?例如:在 Gmail 中,您有 8 个线程。 7 您只收到 1 封电子邮件和 1 个您回复并得到回复的线程。在这种情况下,您有 10 条消息,但有 8 个线程。如果您在 Gmail 中关闭“对话视图”,这真的很重要,因为您会看到单独的邮件,但 GmailApp 只会查找线程而不是邮件。

标签: google-apps-script gmail gmail-api gmail-addons


【解决方案1】:

GmailApp.search 提供线程而不是单个邮件。

如果您在 Gmail 设置中取消设置对话视图。它将显示单个邮件。所以在那种情况下,计数之间会出现不匹配的情况。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多