溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

python怎么發(fā)送帶有附件、正文為HTML的郵件

發(fā)布時(shí)間:2021-03-01 11:34:50 來(lái)源:億速云 閱讀:241 作者:清風(fēng) 欄目:開發(fā)技術(shù)

這篇“python怎么發(fā)送帶有附件、正文為HTML的郵件”除了程序員外大部分人都不太理解,今天小編為了讓大家更加理解“python怎么發(fā)送帶有附件、正文為HTML的郵件”,給大家總結(jié)了以下內(nèi)容,具有一定借鑒價(jià)值,內(nèi)容詳細(xì)步驟清晰,細(xì)節(jié)處理妥當(dāng),希望大家通過這篇文章有所收獲,下面讓我們一起來(lái)看看具體內(nèi)容吧。

Python主要用來(lái)做什么

Python主要應(yīng)用于:1、Web開發(fā);2、數(shù)據(jù)科學(xué)研究;3、網(wǎng)絡(luò)爬蟲;4、嵌入式應(yīng)用開發(fā);5、游戲開發(fā);6、桌面應(yīng)用開發(fā)。

一、HTML格式怎么發(fā)送右鍵

1.準(zhǔn)備HTML代碼作為內(nèi)容

2.把郵件的subtype設(shè)置為html

3.發(fā)送

4.舉個(gè)例子:自己發(fā)給自己一個(gè)HTML格式的文件

from email.mime.text import MIMEText



main_content = """

    <!DOCTYPE html>

    <html lang = "en"

    <head>

      <meta charset = "UTF-8">

      <title>實(shí)例</title>

    </head>

    <body>

      <h2>這個(gè)是做測(cè)試用的html<h2>

    </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)

python怎么發(fā)送帶有附件、正文為HTML的郵件

二、發(fā)送帶附件的郵件

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)

python怎么發(fā)送帶有附件、正文為HTML的郵件

感謝你的閱讀,希望你對(duì)“python怎么發(fā)送帶有附件、正文為HTML的郵件”這一關(guān)鍵問題有了一定的理解,具體使用情況還需要大家自己動(dòng)手實(shí)驗(yàn)使用過才能領(lǐng)會(huì),快去試試吧,如果想閱讀更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI