Python 是一種高級編程語言,越來越受到不同行業(yè)的開發(fā)者的關(guān)注。它可以完成多種任務(wù),包括簡單的電子郵件收發(fā)功能。下面展示如何使用 Python 中的第三方庫來收取郵件。
import imaplib import email mail = imaplib.IMAP4_SSL('imap.gmail.com') mail.login('youremail@gmail.com', 'yourpassword') mail.select('inbox') typ, data = mail.search(None, 'ALL') mail_ids = data[0].split() for i in mail_ids: typ, data = mail.fetch(i, '(RFC822)') msg = email.message_from_bytes(data[0][1]) print(msg['subject']) print(msg['from']) print(msg['to'])
代碼解釋:
1. 首先,我們需要導(dǎo)入 imaplib 和 email 模塊。imaplib 模塊用于建立與郵箱的連接,email 模塊用于解析電子郵件中的各個(gè)字段
2. 接下來,我們需要使用 IMAP4_SSL 函數(shù)建立一個(gè)安全連接,該函數(shù)需要傳入兩個(gè)參數(shù):郵箱地址和密碼
3. 然后使用 mail.select() 函數(shù)選擇我們想要獲取的郵件郵夾,這里我們選擇了 inbox (收件箱)
4. 使用 mail.search() 函數(shù)搜索該郵夾,該函數(shù)接受兩個(gè)參數(shù):搜索的范圍和關(guān)鍵詞。我們這里將搜索范圍設(shè)置為 None ,關(guān)鍵詞設(shè)置為 ALL ,表示搜索整個(gè)收件箱
5. 使用 mail.fetch() 函數(shù)獲取每個(gè)郵件的消息頭和內(nèi)容。RFC822 表示整個(gè)郵件消息
6. 使用 email.message_from_bytes() 函數(shù)解析郵件的各個(gè)字段
7. 最后,我們打印出郵件的主題、發(fā)件人和收件人
使用上述代碼可以輕松地收取郵件。
上一篇python 算r方
下一篇c 對象序列化成json