https://developers.google.com/gmail/api/v1/reference/users/messages/list
Gmail API允许检索给定查询的邮件数量估算值(来自:send1@gmail.com:未读)。不知何故,API返回的数字似乎与网络邮件上显示的数字非常不同。
有关如何返回实际数字的想法吗?
答案 0 :(得分:2)
resultSizeEstimate只是一个估算值,不保证一般查询的准确性。它应该为特定标签上的查询提供更合理(仍然估计)的数字(“标签:MYLABEL”或“标签:MYLABEL是:未读”)。
不幸的是,除了检索所有数字并查看返回列表的大小之外,目前还没有获取实际数字的方法。
答案 1 :(得分:1)
部分答案 - 我也达到了103的限制。
我注意到,通过使用Google API的maxResults参数,我得到了不同但仍无效的结果。
使用maxResults的这个值:
request = service.users().messages().list(userId=user_id, labelIds=formatted_labels)
- > resultSizeEstimate = 103
使用maxResults的这个值:
request = service.users().messages().list(userId=user_id, labelIds=formatted_labels, maxResults=100)
- > resultSizeEstimate = 103
使用maxResults的这个值:
request = service.users().messages().list(userId=user_id, labelIds=formatted_labels, maxResults=1000)
- > resultSizeEstimate = 511
使用maxResults的这个值:
request = service.users().messages().list(userId=user_id, labelIds=formatted_labels, maxResults=50)
- > resultSizeEstimate = 52
答案 2 :(得分:0)
这并非完全解决所有情况,但可能会有所帮助。您可以使用Users.labels:get
获取给定标签下的确切电子邮件数量https://developers.google.com/gmail/api/v1/reference/users/labels/get
messagesTotal值给您该数字。
不幸的是,正如其他人注意到的那样,使用Users.messages:list列出消息或进行搜索都不会返回准确的结果。