0
我相對比較新的編程和python,但我認爲我做得很好。這是我的代碼,並且它工作正常,除了它以MIME格式獲取整個消息。我只想要未讀電子郵件的文本正文,但我無法弄清楚如何去除所有格式和標題信息。如果我使用一個smtp python腳本發送一個基本電子郵件,我使它工作正常,並且只打印正文,但是如果我使用outlook發送電子郵件,它會打印一堆額外的垃圾。很感謝任何形式的幫助。如何僅使用IMAP提取Python的電子郵件正文?
client = imaplib.IMAP4_SSL(PopServer)
client.login(USER, PASSWORD)
client.select('INBOX')
status, email_ids = client.search(None, '(UNSEEN SUBJECT "%s")' % PrintSubject)
print email_ids
client.store(email_ids[0].replace(' ',','),'+FLAGS','\Seen')
for email in get_emails(email_ids):
get_emails()
def get_emails(email_ids):
data = []
for e_id in email_ids[0].split():
_, response = client.fetch(e_id, '(UID BODY[TEXT])')
data.append(response[0][1])
return data
如果我回想起來,outlook程序遵循自己的電子郵件標準(包括一些「額外的垃圾」)。試着用谷歌搜索它的定義。 – martineau 2010-12-20 20:38:56