溫馨提示×

溫馨提示×

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

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

使用Python如何實現(xiàn)發(fā)送郵件和發(fā)送帶附件的郵件

發(fā)布時間:2020-11-16 15:36:10 來源:億速云 閱讀:166 作者:Leah 欄目:開發(fā)技術(shù)

這期內(nèi)容當中小編將會給大家?guī)碛嘘P(guān)使用Python如何實現(xiàn)發(fā)送郵件和發(fā)送帶附件的郵件,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

注:163郵箱現(xiàn)在需要使用 客戶端授權(quán)碼 進行測試,不再支持郵箱密碼進行測試。

 1、使用Python發(fā)Text 郵件

import smtplib
# 發(fā)送字符串的郵件
from email.mime.text import MIMEText

# 設(shè)置服務(wù)器所需信息
fromEmailAddr = '發(fā)件人郵箱地址' # 郵件發(fā)送方郵箱地址
password = 'email password' # 密碼(部分郵箱為授權(quán)碼)
toEmailAddrs = ['接收方地址'] # 郵件接受方郵箱地址,注意需要[]包裹,這意味著你可以寫多個郵件地址群發(fā)

# 設(shè)置email信息
# ---------------------------發(fā)送字符串的郵件-----------------------------
# 郵件內(nèi)容設(shè)置
message = MIMEText('hello,test Python send Email.', 'plain', 'utf-8')
# 郵件主題
message['Subject'] = 'python test email'
# 發(fā)送方信息
message['From'] = fromEmailAddr
# 接受方信息
message['To'] = toEmailAddrs[0]
# ---------------------------------------------------------------------


# 登錄并發(fā)送郵件
try:
 server = smtplib.SMTP('smtp.163.com') # 163郵箱服務(wù)器地址,端口默認為25
 server.login(fromEmailAddr, password)
 server.sendmail(fromEmailAddr, toEmailAddrs, message.as_string())
 print('success')
 server.quit()
except smtplib.SMTPException as e:
 print("error:", e)

2、使用Python發(fā)送帶附件的郵件

import smtplib
# 發(fā)送字符串的郵件
from email.mime.text import MIMEText
# 需要 MIMEMultipart 類
from email.mime.multipart import MIMEMultipart

# 設(shè)置服務(wù)器所需信息
fromEmailAddr = '發(fā)件人郵箱地址' # 郵件發(fā)送方郵箱地址
password = 'email password' # 密碼(部分郵箱為授權(quán)碼)
toEmailAddrs = ['收件人地址'] # 郵件接受方郵箱地址,注意需要[]包裹,這意味著你可以寫多個郵件地址群發(fā)

# 設(shè)置email信息
# ---------------------------發(fā)送帶附件郵件-----------------------------
# 郵件內(nèi)容設(shè)置
message = MIMEMultipart()
# 郵件主題
message['Subject'] = 'python test email'
# 發(fā)送方信息
message['From'] = fromEmailAddr
# 接受方信息
message['To'] = toEmailAddrs[0]
# 郵件正文內(nèi)容
message.attach(MIMEText('hello,test Python send Email', 'plain', 'utf-8'))

# 構(gòu)造附件
att1 = MIMEText(open('text.txt', 'rb').read(), 'base64', 'utf-8')
att1['Content-type'] = 'application/octet-stream'
att1['Content-Disposition'] = 'attachment; filename="test.zip"'
message.attach(att1)
# ---------------------------------------------------------------------

# 登錄并發(fā)送郵件
try:
 server = smtplib.SMTP('smtp.163.com') # 163郵箱服務(wù)器地址,端口默認為25
 server.login(fromEmailAddr, password)
 server.sendmail(fromEmailAddr, toEmailAddrs, message.as_string())
 print('success')
 server.quit()
except smtplib.SMTPException as e:
 print("error:", e)

上述就是小編為大家分享的使用Python如何實現(xiàn)發(fā)送郵件和發(fā)送帶附件的郵件了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

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

AI