python如何發(fā)送帶有附件、正文為HTML的郵件
1.準(zhǔn)備HTML代碼作為內(nèi)容
2.把郵件的subtype設(shè)置為html
3.發(fā)送
4.舉個(gè)例子:自己發(fā)給自己一個(gè)HTML格式的文件
from email.mime.text import MIMETextmain_content = ''' <!DOCTYPE html> <html lang = 'en' <head> <meta charset = 'UTF-8'> <title>實(shí)例</title> </head> <body> <h1>這個(gè)是做測(cè)試用的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)
1.可以把郵件看作是一個(gè)文本郵件和一個(gè)附件的合體
2.一封郵件如果涉及多個(gè)部分,需要使用MIMEMultipart格式構(gòu)建
3.添加一個(gè)MIMEText正文
4.添加一個(gè) MIMEBase或者M(jìn)EMEText作為附件
5.舉個(gè)例子:
from email.mime.text import MIMEText#構(gòu)建附件使用from email.mime.multipart import MIMEBase,MIMEMultipart#構(gòu)建基礎(chǔ)郵件使用mail_mul = MIMEMultipart()#構(gòu)建一個(gè)郵件對(duì)象mail_text = MIMEText('Hello,I am liudana','plain','utf-8')#構(gòu)建郵件正文mail_mul.attach(mail_text)#把構(gòu)建好的郵件正文附加到郵件中#構(gòu)建附件,需要從本地讀入附件#打開一個(gè)本地文件#以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后分號(hào)位英文狀態(tài) #2.filename后面需要引號(hào)包裹,注意與外面引號(hào)錯(cuò)開 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的郵件的詳細(xì)內(nèi)容,更多關(guān)于python 發(fā)送郵件的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!
相關(guān)文章:
1. Java基于redis和mysql實(shí)現(xiàn)簡(jiǎn)單的秒殺(附demo)2. 如何用python識(shí)別滑塊驗(yàn)證碼中的缺口3. AJAX實(shí)現(xiàn)省市縣三級(jí)聯(lián)動(dòng)效果4. 詳解php如何合并身份證正反面圖片為一張圖片5. ASP.NET MVC視圖頁(yè)使用jQuery傳遞異步數(shù)據(jù)的幾種方式詳解6. php讀取xml中某個(gè)元素的內(nèi)容(PHP5以上才支持)7. 三道java新手入門面試題,通往自由的道路--鎖+Volatile8. SpringBoot+SpringCache實(shí)現(xiàn)兩級(jí)緩存(Redis+Caffeine)9. ASP.NET 2.0頁(yè)面框架的幾處變化10. 關(guān)于HTML5的img標(biāo)簽
