Python 是一種非常流行的編程語言,被許多人用于編寫郵件處理程序。它可以輕松地讀取和發(fā)送電子郵件,并且支持許多常見的郵件附加文件類型。在本文中,我們將了解如何使用 Python 獲取和處理電子郵件附件。
# 導(dǎo)入必要的庫 import imaplib import email import os # 設(shè)置登錄信息 USERNAME = 'your_email_address' PASSWORD = 'your_email_password' SERVER = 'imap.your_email_server.com' # 登錄到郵件服務(wù)器 mail = imaplib.IMAP4_SSL(SERVER) mail.login(USERNAME, PASSWORD) # 選擇收件箱并打開最新的郵件 mail.select("inbox") typ, msg_data = mail.search(None, 'ALL') msg_ids = msg_data[0].split() msg_id = msg_ids[-1] # 最新的郵件 typ, msg_data = mail.fetch(msg_id, '(RFC822)') # 解碼郵件并獲取附件 for response in msg_data: if isinstance(response, tuple): msg = email.message_from_bytes(response[1]) for part in msg.walk(): if part.get_content_maintype() == 'multipart' or part.get('Content-Disposition') is None: continue filename = part.get_filename() data = part.get_payload(decode=True) if filename: # 在本地保存附件 save_path = os.path.join(os.path.expanduser('~'), filename) with open(save_path, 'wb') as f: f.write(data) # 退出郵件服務(wù)器 mail.close() mail.logout()
以上代碼將登錄到您的電子郵件服務(wù)器,選擇收件箱中的最新電子郵件并檢查其所有部分以查找具有“Content-Disposition”標(biāo)頭的附件。如果找到附件,則保存到本地計(jì)算機(jī)中。
請(qǐng)注意,要使用此代碼,您需要替換 USERNAME, PASSWORD 和 SERVER 變量與郵件服務(wù)器的信息以及最新電子郵件的標(biāo)識(shí)符(如果您不想處理最新電子郵件,可以使用另一個(gè)標(biāo)識(shí)符)。此外,您可能需要根據(jù)需要修改代碼以處理不同類型的電子郵件附件。