0

我想根据使用 API 的查询来阅读我域中的所有电子邮件。目前,我一次枚举一个用户并为其提取所有电子邮件

list(userId, includeSpamTrash=None, labelIds=None, maxResults=None, pageToken=None, q=None, x__xgafv=None)

这种方法不可扩展,因为在 1000 多个用户的情况下,这将花费大量时间。我想针对查询提取所有用户的电子邮件,但不枚举 userId

4

1 回答 1

1

message.list方法不返回完整的消息对象,它只返回消息 ID 和线程 ID 。

"messages": [
    {
      "id": "178a78eef21cc0fa",
      "threadId": "178a78eef21cc0fa"
    },
    {
      "id": "178a77fd677004b8",
      "threadId": "178a738e29b7812d"
    },
    {
      "id": "178a778d32097a98",
      "threadId": "178a738e29b7812d"
    },

如果您想了解有关消息的更多信息,则需要运行message.get,它会返回完整的消息对象

我想我要说的是这种方法在您的情况下可能无法扩展,但它是您唯一的选择。

您可以尝试对请求进行批处理,但我个人对批处理的运气并不好,您需要检查 Python 客户端库是否已更新以使用新的批处理端点我不确定他们是否已经更新它。

于 2021-04-06T14:25:30.137 回答