У меня есть этот код, чтобы использовать gmail imap для проверки непрочитанных сообщений, и он хорошо работает для чтения сообщений в папке входящих сообщений, но я также хочу читать сообщения в папке спама. Я не уверен, как бы я go об этом. Я также хочу только продолжать читать невидимые сообщения, как это делает скрипт. Любая помощь или любое возможное решение приветствуется. Это то, что я до сих пор (это будет проверять только входящие, а не спам, мне нужно проверить непрочитанные в обоих):
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))