python 發(fā)送帶附件郵件 腳本

from email.header import Header
from email.mime.text import MIMEText
import smtplib
from email.utils import parseaddr, formataddr
from email import encoders
from email.mime.base import MIMEBase
from email.mime.multipart import MIMEMultipart

-- coding: UTF-8 --

def _format_addr(s):
name, addr = parseaddr(s)
return formataddr((
Header(name, 'utf-8').encode(),
addr))

from_addr = "xxx"
password ="xxx"
to_addr =["xx"]
smtp_server = "mail.xxx.com"

msg = MIMEMultipart()
msg.attach(MIMEText('send with file...', 'plain', 'utf-8'))
msg['From'] =_format_addr(from_addr)
msg['To'] = _format_addr(to_addr)
msg['Subject'] = Header(u'來自SMTP的問候……', 'utf-8')

msg.attach(MIMEText('send with file...', 'plain', 'utf-8'))

添加附件就是加上一個(gè)MIMEBase,從本地讀取一個(gè)圖片:

with open('jietu.png', 'rb') as f:
# 設(shè)置附件的MIME和文件名,這里是png類型:
mime = MIMEBase('image', 'png', filename='jietu.png')
# 加上必要的頭信息:
mime.add_header('Content-Disposition', 'attachment', filename='jietu.png')
mime.add_header('Content-ID', '<0>')
mime.add_header('X-Attachment-Id', '0')
# 把附件的內(nèi)容讀進(jìn)來:
mime.set_payload(f.read())
# 用Base64編碼:
encoders.encode_base64(mime)
# 添加到MIMEMultipart:
msg.attach(mime)

server = smtplib.SMTP(smtp_server, 25)
server.set_debuglevel(1)
server.login(from_addr, password)
server.sendmail(from_addr, to_addr, msg.as_string())
server.quit()

?著作權(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ù)。

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

  • Linux多線程同步機(jī)制 - 信號(hào)量信號(hào)量函數(shù)定義如下:include int semctl(int sem_i...
    molscar閱讀 934評(píng)論 0 0
  • 網(wǎng)絡(luò) 理論模型,分為七層物理層數(shù)據(jù)鏈路層傳輸層會(huì)話層表示層應(yīng)用層 實(shí)際應(yīng)用,分為四層鏈路層網(wǎng)絡(luò)層傳輸層應(yīng)用層 IP...
    FlyingLittlePG閱讀 966評(píng)論 0 0
  • python使用SMTP發(fā)送電子郵件 SMTP是發(fā)送郵件的協(xié)議,Pytho...
    小娟_bb93閱讀 897評(píng)論 0 1
  • 一、相關(guān)模塊介紹 發(fā)送郵件主要用到了smtplib和email兩個(gè)模塊,這里首先就兩個(gè)模塊進(jìn)行一下簡(jiǎn)單的介紹: 1...
    LizPL閱讀 1,417評(píng)論 0 3
  • *大量亂七八糟的東西,請(qǐng)慎入阿慎入 眼前出現(xiàn)的,是一個(gè)如車站般的舞臺(tái),舞臺(tái)上只有一人的身影,佇立於那舞臺(tái)的遠(yuǎn)端,而...
    四型態(tài)變化暗暗閱讀 256評(píng)論 0 2

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