Python - imaplib - 查看特定发件人的邮件

Dus*_*tin 7 python gmail imap

我有一个python脚本,它检查Gmail的IMAP服务器上的电子邮件,它显示服务器上的最新电子邮件.但是,电子邮件地址正在接收来自多个不同帐户的电子邮件 我该怎么做才能获取此脚本并让它只查看特定发件人的邮件?例如,任何发送到"johndoe@gmail.com"的电子邮件都会出现.

import imaplib

mail = imaplib.IMAP4_SSL('imap.gmail.com')
mail.login('myemail@gmail.com', 'password123')
mail.list()
# Out: list of "folders" aka labels in gmail.
mail.select("inbox") # connect to inbox.

result, data = mail.search(None, "ALL")

ids = data[0] # data is a list.
id_list = ids.split() # ids is a space separated string
latest_email_id = id_list[-1] # get the latest

result, data = mail.fetch(latest_email_id, "(RFC822)") # fetch the email body (RFC822) for the given ID

raw_email = data[0][1] # here's the body, which is raw text of the whole email
# including headers and alternate payloads
Run Code Online (Sandbox Code Playgroud)

提前致谢!:)

kku*_*ian 6

改变:

result, data = mail.search(None, "ALL")
Run Code Online (Sandbox Code Playgroud)

到:

result, data = mail.search(None, '(TO "johndoe@gmail.com")')
Run Code Online (Sandbox Code Playgroud)