python: smtplib使用實(shí)例

導(dǎo)入依賴

import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.mime.application import MIMEApplication
from email.header import Header

正文及寄送和接收者

msg = MIMEMultipart()
text = '正文'
sender = 'XXX@YY.com'
receivers = ['XXXX@YY.com']
content = MIMEText(text)

msg['From'] = Header(sender, 'utf-8')
msg['To'] = Header('XXXX', 'utf-8') # 這里是信件里收件者欄位的內(nèi)容,并非顯示真實(shí)的收件者
subject = '主題'
msg['Subject'] = Header(subject, 'utf-8')

# 下面是文字部分,也就是純文本
puretext = MIMEText(text)
msg.attach(puretext)

# 添加Excel附件
xlsxpart = MIMEApplication(open(path, 'rb').read())
xlsxpart["Content-Type"] = 'application/octet-stream'
xlsxpart.add_header('Content-Disposition', 'attachment', filename=path)
msg.attach(xlsxpart)

寄送信件

try:
    client = smtplib.SMTP()
    client.connect('xxx@yy.com', 25) # 參數(shù)是SMTP 服務(wù)器主機(jī)以及默認(rèn)端口25
    # 注意:有些服務(wù)器需要login
    client.sendmail(sender, receivers, msg.as_string())
    client.quit()
    print('帶有各種附件的郵件發(fā)送成功。')
except smtplib.SMTPRecipientsRefused:
    print('Recipient refused')
except smtplib.SMTPAuthenticationError:
    print('Auth error')
except smtplib.SMTPSenderRefused:
    print('Sender refused')
except smtplib.SMTPException as e:
    print(e) 
蟹蟹.jpg
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
禁止轉(zhuǎn)載,如需轉(zhuǎn)載請(qǐng)通過(guò)簡(jiǎn)信或評(píng)論聯(lián)系作者。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容