在 Python 中使用 Gmail API 使用 message-id 搜索电子邮件

Posted

技术标签:

【中文标题】在 Python 中使用 Gmail API 使用 message-id 搜索电子邮件【英文标题】:Search for email using message-id using Gmail API in Python 【发布时间】:2021-04-28 10:48:46 【问题描述】:

我正在尝试通过使用以下 API 搜索其 message-id 来获取特定电子邮件:https://developers.google.com/gmail/api/guides/filtering

例如message_id = "<C6P4M-GEE8PzO8qf0=oTQ3ZJeFB_uASDAAF9AJSRRiNuUVBzan0w@mail.gmail.com>"

我可以通过修改以下内容来实现它吗:

MESSAGE = GMAIL.users().messages().list(userId='me',labelIds='INBOX').execute()

但是如何修改它以仅搜索带有 message_id 的特定电子邮件?

目前我尝试使用一种效率极低的解决方案,该解决方案通过使用 messages.list 扫描整个收件箱,然后找到匹配的电子邮件消息 ID。

【问题讨论】:

【参考方案1】:

找到解决方案:

var = "Rfc822msgid:" + message_id
MESSAGE = GMAIL.users().messages().list(userId='me',q=var).execute() 

参考:https://support.google.com/mail/answer/7190?hl=en

【讨论】:

以上是关于在 Python 中使用 Gmail API 使用 message-id 搜索电子邮件的主要内容,如果未能解决你的问题,请参考以下文章

在python中使用gmail api从电子邮件中提取表格

如何在 python 中向 Gmail-API 发送批处理请求?

如何通过 gmail-api for python 发送 HTML 格式的电子邮件

如何使用 Gmail API (python) 检索整个邮件正文

使用 Python 进行 base64 解码,并使用基于 REST 的 Gmail API 下载附件

使用Gmail API时出现BrokenPipeError