从 SES 滥用报告电子邮件中获取投诉电子邮件
Getting complaint email from SES abuse report email
我正在使用 python Imaplib 抓取 zoho 收件箱以获取从 SES 发送的退回邮件和失败邮件。
现在,在尝试从滥用报告通知中获取电子邮件时,电子邮件正文没有给出任何结果 (NONE)
密码是:
def ss():
yesterday = (datetime.today() - timedelta(days=30)).strftime('%d-%b-%Y')
M = imaplib.IMAP4_SSL('imap.zoho.com')
M.login('email', password)
M.select()
line = '(FROM "complaints@us-west-2.email-abuse.amazonses.com" SINCE {0})'.format(yesterday)
typ, data = M.uid('search', line)
# print(typ,data)
for i in reversed(data[0].split()):
print(i)
result, data = M.fetch(i, "(RFC822)")
print(data)
通常 M.fetch(i, "(RFC822)") returns 电子邮件正文。
这里的数据是None。我想知道如何获得正确的内容,以便我可以使用正则表达式来获得相关的邮件 ID
得到解决方案,这是一个严重的错误。
而不是使用
result, data = M.fetch(i, "(RFC822)")
我不得不使用:
result, data = M.uid('fetch', i, '(RFC822)')
和以前一样,我搜索了 UID 而不是易失性 ID。后来我试图通过 volatile id 获取 RFC822 或邮件正文。
可能是 none 因为邮件可能已被删除或其他原因。
我正在使用 python Imaplib 抓取 zoho 收件箱以获取从 SES 发送的退回邮件和失败邮件。
现在,在尝试从滥用报告通知中获取电子邮件时,电子邮件正文没有给出任何结果 (NONE)
密码是:
def ss():
yesterday = (datetime.today() - timedelta(days=30)).strftime('%d-%b-%Y')
M = imaplib.IMAP4_SSL('imap.zoho.com')
M.login('email', password)
M.select()
line = '(FROM "complaints@us-west-2.email-abuse.amazonses.com" SINCE {0})'.format(yesterday)
typ, data = M.uid('search', line)
# print(typ,data)
for i in reversed(data[0].split()):
print(i)
result, data = M.fetch(i, "(RFC822)")
print(data)
通常 M.fetch(i, "(RFC822)") returns 电子邮件正文。
这里的数据是None。我想知道如何获得正确的内容,以便我可以使用正则表达式来获得相关的邮件 ID
得到解决方案,这是一个严重的错误。
而不是使用
result, data = M.fetch(i, "(RFC822)")
我不得不使用:
result, data = M.uid('fetch', i, '(RFC822)')
和以前一样,我搜索了 UID 而不是易失性 ID。后来我试图通过 volatile id 获取 RFC822 或邮件正文。
可能是 none 因为邮件可能已被删除或其他原因。