我具有使用gmail imap来检查未读邮件的代码,可以很好地读取收件箱中的邮件,但是我也想读取垃圾邮件文件夹中的邮件。我不确定该如何处理。我也只想像脚本一样继续仅读取看不见的消息。任何帮助或任何可能的解决方案表示赞赏。这是我到目前为止的内容(这只会检查收件箱,而不是垃圾邮件,我需要同时检查未读邮件):
import imaplib
import os
def check_emails(email):
output = []
try:
M = imaplib.IMAP4_SSL('imap.gmail.com', 993)
M.login(email.split(":")[0], email.split(":")[1])
M.select()
M.select("Inbox")
status, data = M.search(None, "UNSEEN")
for num in data[0].split():
status, data = M.fetch(num, '(BODY[HEADER.FIELDS (SUBJECT)])')
email_msg = data[0][1]
output.append(email_msg)
return output
except Exception as e:
return e.args
emails = [line.rstrip('\n') for line in open(os.path.abspath("emails.txt"), 'r')]
for email in emails:
print("Checking email " + email)
print(check_emails(email))
想通了。我一直在尝试在搜索中使用[Google Mail] /,但实际上是[Gmail] /垃圾邮件。