python如何發(fā)送帶有附件、正文為HTML的郵件
一、HTML格式怎么發(fā)送右鍵
1.準備HTML代碼作為內(nèi)容
2.把郵件的subtype設(shè)置為html
3.發(fā)送
4.舉個例子:自己發(fā)給自己一個HTML格式的文件
from email.mime.text import MIMEText main_content = """ <!DOCTYPE html> <html lang = "en" <head> <meta charset = "UTF-8"> <title>實例</title> </head> <body> <h1>這個是做測試用的html<h1> </body> </html> """ msg = MIMEText(main_content,"html","utf-8") #構(gòu)建發(fā)送者地址和登錄信息 from_addr = "1215217867@qq.com" from_pwd = "" #構(gòu)建郵件接受者的信息 to_addr = "1215217867@qq.com" smtp_srv = "smtp.qq.com" try: import smtplib srv = smtplib.SMTP_SSL(smtp_srv.encode(),465) srv.login(from_addr,from_pwd) srv.sendmail(from_addr,[to_addr],msg.as_string()) srv.quit() except Exception as a: print(a)
二、發(fā)送帶附件的郵件
1.可以把郵件看作是一個文本郵件和一個附件的合體
2.一封郵件如果涉及多個部分,需要使用MIMEMultipart格式構(gòu)建
3.添加一個MIMEText正文
4.添加一個 MIMEBase或者MEMEText作為附件
5.舉個例子:
from email.mime.text import MIMEText#構(gòu)建附件使用 from email.mime.multipart import MIMEBase,MIMEMultipart#構(gòu)建基礎(chǔ)郵件使用 mail_mul = MIMEMultipart()#構(gòu)建一個郵件對象 mail_text = MIMEText("Hello,I am liudana","plain","utf-8")#構(gòu)建郵件正文 mail_mul.attach(mail_text)#把構(gòu)建好的郵件正文附加到郵件中 #構(gòu)建附件,需要從本地讀入附件 #打開一個本地文件 #以rb格式打開 with open("00.TestCasePython.py","rb") as f: s = f.read() #設(shè)置附件的MIME和文件名 m = MIMEText(s,"base64","utf-8")#類型是base64,這是郵件正文的格式,這里只需要記住就可以了 m["Content-Type"] = "application/octet-stream" #需要注意 #1.attachment后分號位英文狀態(tài) #2.filename后面需要引號包裹,注意與外面引號錯開 m["Content-Disposition"] = "attachment;filename = '00.TestCasePython.py'" #添加到MIMEMultipart mail_mul.attach(m) #構(gòu)建發(fā)送者地址和登錄信息 from_addr = "1215217867@qq.com" from_pwd = "ysqmojzwkgfciccd" #構(gòu)建郵件接受者的信息 to_addr = "1215217867@qq.com" smtp_srv = "smtp.qq.com" try: import smtplib srv = smtplib.SMTP_SSL(smtp_srv.encode(),465) srv.login(from_addr,from_pwd) srv.sendmail(from_addr,[to_addr],mail_mul.as_string()) srv.quit() except Exception as a: print(a)
三、源碼
D55_2_HTMLMailSend.py
D55_3_SendAttachmentMail.py
https://github.com/ruigege66/Python_learning/blob/master/D55_2_HTMLMailSend.py
https://github.com/ruigege66/Python_learning/blob/master/D55_3_SendAttachmentMail.py
以上就是python如何發(fā)送帶有附件、正文為HTML的郵件的詳細內(nèi)容,更多關(guān)于python 發(fā)送郵件的資料請關(guān)注腳本之家其它相關(guān)文章!
- python實現(xiàn)自動化辦公郵件合并功能
- Python利用機器學(xué)習(xí)算法實現(xiàn)垃圾郵件的識別
- Python 發(fā)送SMTP郵件的簡單教程
- Python一行代碼實現(xiàn)自動發(fā)郵件功能
- Python基礎(chǔ)詳解之郵件處理
- Python 調(diào)用API發(fā)送郵件
- Python基于SMTP發(fā)送郵件的方法
- python基于SMTP發(fā)送QQ郵件
- python 自動監(jiān)控最新郵件并讀取的操作
- python實現(xiàn)發(fā)送郵件
- python 實現(xiàn)網(wǎng)易郵箱郵件閱讀和刪除的輔助小腳本
- python使用Windows的wmic命令監(jiān)控文件運行狀況,如有異常發(fā)送郵件報警
- 用python監(jiān)控服務(wù)器的cpu,磁盤空間,內(nèi)存,超過郵件報警
- python郵件中附加文字、html、圖片、附件實現(xiàn)方法
- Python用20行代碼實現(xiàn)完整郵件功能
相關(guān)文章
python中isoweekday和weekday的區(qū)別及說明
這篇文章主要介紹了python中isoweekday和weekday的區(qū)別及說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-07-07Python3.5基礎(chǔ)之NumPy模塊的使用圖文與實例詳解
這篇文章主要介紹了Python3.5基礎(chǔ)之NumPy模塊的使用,結(jié)合圖文與實例形式詳細分析了Python3.5中Numpy模塊的原理、功能、使用方法及操作注意事項,需要的朋友可以參考下2019-04-04Pandas:Series和DataFrame刪除指定軸上數(shù)據(jù)的方法
今天小編就為大家分享一篇Pandas:Series和DataFrame刪除指定軸上數(shù)據(jù)的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-11-11PyCharm遠程調(diào)試代碼配置以及運行參數(shù)設(shè)置方式
這篇文章主要介紹了PyCharm遠程調(diào)試代碼配置以及運行參數(shù)設(shè)置方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-01-01Python學(xué)習(xí)小技巧之列表項的推導(dǎo)式與過濾操作
這篇文章主要給大家介紹了Python學(xué)習(xí)小技巧之列表項的推導(dǎo)式與過濾操作的相關(guān)資料,文中介紹的非常詳細,對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看把。2017-05-05