您好,登錄后才能下訂單哦!
這篇“python怎么發送帶有附件、正文為HTML的郵件”除了程序員外大部分人都不太理解,今天小編為了讓大家更加理解“python怎么發送帶有附件、正文為HTML的郵件”,給大家總結了以下內容,具有一定借鑒價值,內容詳細步驟清晰,細節處理妥當,希望大家通過這篇文章有所收獲,下面讓我們一起來看看具體內容吧。
Python主要應用于:1、Web開發;2、數據科學研究;3、網絡爬蟲;4、嵌入式應用開發;5、游戲開發;6、桌面應用開發。
1.準備HTML代碼作為內容
2.把郵件的subtype設置為html
3.發送
4.舉個例子:自己發給自己一個HTML格式的文件
from email.mime.text import MIMEText main_content = """ <!DOCTYPE html> <html lang = "en" <head> <meta charset = "UTF-8"> <title>實例</title> </head> <body> <h2>這個是做測試用的html<h2> </body> </html> """ msg = MIMEText(main_content,"html","utf-8") #構建發送者地址和登錄信息 from_addr = "1215217867@qq.com" from_pwd = "" #構建郵件接受者的信息 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.可以把郵件看作是一個文本郵件和一個附件的合體
2.一封郵件如果涉及多個部分,需要使用MIMEMultipart格式構建
3.添加一個MIMEText正文
4.添加一個 MIMEBase或者MEMEText作為附件
5.舉個例子:
from email.mime.text import MIMEText#構建附件使用 from email.mime.multipart import MIMEBase,MIMEMultipart#構建基礎郵件使用 mail_mul = MIMEMultipart()#構建一個郵件對象 mail_text = MIMEText("Hello,I am liudana","plain","utf-8")#構建郵件正文 mail_mul.attach(mail_text)#把構建好的郵件正文附加到郵件中 #構建附件,需要從本地讀入附件 #打開一個本地文件 #以rb格式打開 with open("00.TestCasePython.py","rb") as f: s = f.read() #設置附件的MIME和文件名 m = MIMEText(s,"base64","utf-8")#類型是base64,這是郵件正文的格式,這里只需要記住就可以了 m["Content-Type"] = "application/octet-stream" #需要注意 #1.attachment后分號位英文狀態 #2.filename后面需要引號包裹,注意與外面引號錯開 m["Content-Disposition"] = "attachment;filename = '00.TestCasePython.py'" #添加到MIMEMultipart mail_mul.attach(m) #構建發送者地址和登錄信息 from_addr = "1215217867@qq.com" from_pwd = "ysqmojzwkgfciccd" #構建郵件接受者的信息 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)
感謝你的閱讀,希望你對“python怎么發送帶有附件、正文為HTML的郵件”這一關鍵問題有了一定的理解,具體使用情況還需要大家自己動手實驗使用過才能領會,快去試試吧,如果想閱讀更多相關知識點的文章,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。