python Zmail模塊簡(jiǎn)介與使用示例
介紹
Zmail 使得在python3中發(fā)送和接受郵件變得更簡(jiǎn)單。你不需要手動(dòng)添加服務(wù)器地址、端口以及適合的協(xié)議,zmail會(huì)幫你完成。此外,使用一個(gè)python字典來代表郵件內(nèi)容也更符合直覺
安裝
Zmail僅支持python3,不需要任何外部依賴. 不支持python2.
pip3 install zmail
特性
- 自動(dòng)尋找服務(wù)器地址以及端口
- 自動(dòng)使用可靠的鏈接協(xié)議
- 自動(dòng)將一個(gè)python字典映射成MIME對(duì)象(帶有附件的)
- 自動(dòng)添加頭文件以及l(fā)ocalhostname來避免服務(wù)器拒收你的郵件
- 輕松自定義你的頭文件
- 支持使用HTML作為郵件內(nèi)容
- 僅需python>=3.5,你可以將其嵌入你的項(xiàng)目而無需其他的依賴
使用須知
使用它之前,請(qǐng)保證
- 使用Python3
- 確保打開了郵箱的POP3和SMTP功能 (對(duì)于 @163.com 和 @gmail.com 你需要設(shè)置你的應(yīng)用專用密碼)
然后,剩下你需要做的就是import zmail即可
使用示例
發(fā)送你的郵件
import zmail
# 你的郵件內(nèi)容
mail_content = {
"subject":"success!", # 郵件主題
"content_text":"This message from zmail", # 郵件內(nèi)容
"attachments":r"D:\test.docx", # 郵件附件
}
# 使用你的郵件賬戶名和密碼登錄服務(wù)器
server = zmail.server("XXXXXX@163.com", "XXXXXX")
# 發(fā)送郵件
server.send_mail('yourfriend@example.com', mail_content)
給多個(gè)信箱發(fā)件,修改發(fā)送郵件 即可,其他內(nèi)容同上
# 發(fā)送郵件 server.send_mail(['555555@qq.com','666666@qq.com'],mail_content)
發(fā)送HTML作為郵件內(nèi)容
mail = {
'subject': 'Success!', # 郵件主題
'content_html': ['HTML CONTENT'], # HTML格式的郵件內(nèi)容
'attachments': '/Users/zyh/Documents/example.zip', # 郵件附件
}
server.send_mail('yourfriend@example.com',mail)
或者
with open('/Users/example.html','r') as f:
content_html = f.read()
mail = {
'subject': 'Success!',
'content_html': content_html,
'attachments': '/Users/zyh/Documents/example.zip',
}
server.send_mail('yourfriend@example.com',mail)
- 自定義你的server
如果zmail不能正常工作,你可以自定義server的配置
server = zmail.server('username','password',smtp_host='smtp.163.com',smtp_port=994,smtp_ssl=True,pop_host='pop.163.com',pop_port=995,pop_tls=True)
取回你的郵件
- 取得最新的郵件
import zmail
server = zmail.server('yourmail@example.com', 'yourpassword')
mail = server.get_latest()
- 依據(jù)id取回郵件
mail = server.get_mail(2)
- 依據(jù) (subject,after,before,sender)取回一個(gè)列表的郵件
mail = server.get_mails(subject='163',after='2018-1-1',sender='github')
示例中, 如果 '163' 在郵件的主題中,這封郵件將會(huì)被匹配, 例如' [163] Your password has changed'
郵件的結(jié)構(gòu)
- content-type: 郵件內(nèi)容的類型
- subject: 郵件主題
- to:收件人
- from:寄件人
- date: 年-月-日 時(shí)間 時(shí)區(qū)
- boundary: 如果郵件為multiple - - - parts,你可以得到其分界線
- content: 郵件的文本內(nèi)容(僅在text/plain時(shí)可以被解析)
- contents: 郵件的body,里面包含著由分界線分割的每一個(gè)段落
- attachments: None 或者 [['附件名稱;編碼方式','附件的二進(jìn)制內(nèi)容']...]
- id: 在郵箱中的id
項(xiàng)目地址:
GitHub:https://github.com/ZYunH/zmail
以上就是python Zmail模塊簡(jiǎn)介與使用示例的詳細(xì)內(nèi)容,更多關(guān)于python Zmail模塊的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
python 集合set中 add與update區(qū)別介紹
這篇文章主要介紹了python 集合set中 add與update區(qū)別介紹,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-03-03
Python搭建代理IP池實(shí)現(xiàn)存儲(chǔ)IP的方法
這篇文章主要介紹了Python搭建代理IP池實(shí)現(xiàn)存儲(chǔ)IP的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-10-10
Python實(shí)現(xiàn)隨機(jī)生成圖片驗(yàn)證碼詳解
這篇文章主要介紹了如何利用Python生成隨機(jī)的圖片驗(yàn)證碼 并打印驗(yàn)證碼的值,文中的示例代碼簡(jiǎn)潔易懂,感興趣的小伙伴可以跟隨小編一起試試2022-01-01
python實(shí)現(xiàn)的多任務(wù)版udp聊天器功能案例
這篇文章主要介紹了python實(shí)現(xiàn)的多任務(wù)版udp聊天器功能,結(jié)合具體案例形式分析了Python基于udp的聊天器功能相關(guān)實(shí)現(xiàn)與使用技巧,需要的朋友可以參考下2019-11-11
python數(shù)據(jù)持久存儲(chǔ) pickle模塊的基本使用方法解析
這篇文章主要介紹了python數(shù)據(jù)持久存儲(chǔ) pickle模塊的基本使用方法解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-08-08
Python函數(shù)遞歸調(diào)用實(shí)現(xiàn)原理實(shí)例解析
這篇文章主要介紹了Python函數(shù)遞歸調(diào)用實(shí)現(xiàn)原理過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08
python使用Tkinter實(shí)現(xiàn)在線音樂播放器
這篇文章主要為大家詳細(xì)介紹了python使用Tkinter實(shí)現(xiàn)在線音樂播放器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-01-01
詳解appium自動(dòng)化測(cè)試工具(monitor、uiautomatorviewer)
這篇文章主要介紹了詳解appium自動(dòng)化測(cè)試工具(monitor、uiautomatorviewer),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01

