在本文中,您將了解如何以編程方式從郵件服務器檢索電子郵件。特別是,您將了解如何使用 IMAP 或 POP3 協議連接到郵件服務器並使用 Python 閱讀電子郵件。
使用 POP3 或 IMAP 閱讀電子郵件的 Python 庫
為了使用 POP3 或 IMAP 從郵件服務器讀取電子郵件,我們將使用 Aspose.Email for Python via .NET。它是一個功能豐富的電子郵件庫,可讓您從 Python 應用程序中實現電子郵件客戶端。您可以 下載.whl 文件或使用以下 pip 命令安裝庫。
> pip install Aspose.Email-for-Python-via-NET
在 Python 中從郵件服務器讀取電子郵件
POP3 和 IMAP 通常用於從郵件服務器檢索電子郵件。以下部分演示如何分別使用這兩種電子郵件協議閱讀電子郵件。
在 Python 中使用 POP3 閱讀電子郵件
以下是在 Python 中使用 POP3 閱讀電子郵件的步驟。
- 創建 Pop3Client 類的對象並使用主機、端口、用戶名和密碼對其進行初始化。
- 使用 Pop3Client.securityoptions 屬性設置安全選項。
- 使用 Pop3Client.getmessagecount() 方法獲取消息計數。
- 使用 Pop3Client.fetchmessage() 方法循環訪問每條消息。
以下代碼示例展示瞭如何在 Python 中使用 POP3 閱讀電子郵件。
# 創建 POP3 客戶端
client = Pop3Client("pop.gmail.com", 995, "username", "password")
# 設置安全選項
client.security_options = SecurityOptions.AUTO
# 獲取消息數
messageCount = client.get_message_count()
print("Total messages: " + str(messageCount))
# 創建 MailMessage 類的實例以讀取消息
for i in range(0,messageCount):
message = client.fetch_message(i+1)
print("From:" + str(message.from_address))
print("Subject:" + message.subject)
print(message.html_body)
在 Python 中使用 IMAP 閱讀電子郵件
以下是在 Python 中使用 IMAP 閱讀電子郵件的步驟。
- 創建 ImapClient 類的對象並使用主機、端口、用戶名和密碼對其進行初始化。
- 使用 ImapClient.selectfolder(folderName) 方法選擇文件夾。
- 使用 ImapClient.listmessages() 方法遍歷消息列表。
以下代碼示例展示瞭如何在 Python 中使用 IMAP 閱讀電子郵件。
# 使用 IMAP 連接到郵件服務器
client = ImapClient("imap.gmail.com", 993, "username", "password")
# 選擇文件夾
client.select_folder("Inbox")
# 遍歷電子郵件並將它們保存為 .eml 文件
for msg in client.list_messages():
print("Subject: " + msg.subject)
print("HtmlBody: " + msg.html_body)
print("TextBody: " + msg.body)
client.save_message(msg.unique_id, msg.unique_id + "_out.eml")
Python 電子郵件庫 - 獲取免費許可證
您可以通過獲得免費臨時許可證來使用 Aspose.Email for Python。
結論
在本文中,您學習瞭如何使用 Python 從郵件服務器讀取電子郵件。特別是,您已經了解瞭如何使用 POP3 和 IMAP 客戶端來獲取和閱讀電子郵件消息。您可以使用 文檔 探索有關 Python 電子郵件庫的更多信息。此外,您可以在我們的論壇 上發表您的疑問。