核心部分:
? ? #純粹的ssl加密方式,通信過程加密,郵件數(shù)據(jù)安全
? ? smtp = smtplib.SMTP_SSL(smtpHost,sslPort)
? ? smtp.ehlo()
? ? smtp.login(username,password)
? ? #發(fā)送郵件
? ? smtp.sendmail(fromMail,toMail,message.as_string())
? ? smtp.close()
代碼如下:
#!/usr/bin/python
#? coding:utf-8
#? lichanglai
import smtplib
from email.MIMEText import MIMEText
from email.mime.multipart import MIMEMultipart
from email.Utils import formatdate
from email.Header import Header
import sys
from email.mime.image import MIMEImage
#設(shè)置默認(rèn)字符集為UTF8 不然有些時候轉(zhuǎn)碼會出問題
default_encoding = 'utf-8'
if sys.getdefaultencoding() != default_encoding:
? ? reload(sys)
? ? sys.setdefaultencoding(default_encoding)
#發(fā)送郵件的相關(guān)信息,根據(jù)你實際情況填寫
smtpHost = 'smtp.qq.com'
smtpPort = '25'
sslPort? = '465'
fromMail = ''
toMail? = ''
username = fromMail
password = ''
#創(chuàng)建一個帶附件的實例
message = MIMEMultipart('related')
message['From'] = fromMail
message['To'] =? toMail
subject = 'Python SMTP 郵件測試'
message['Subject'] = Header(subject, 'utf-8')
msgAlternative = MIMEMultipart('alternative')
message.attach(msgAlternative)
mail_msg =?
msgAlternative.attach(MIMEText(mail_msg, 'html', 'utf-8'))
# 指定圖片為當(dāng)前目錄
fp = open('test.jpg', 'rb')
msgImage = MIMEImage(fp.read())fp.close()
# 定義圖片 ID,在 HTML 文本中引用
msgImage.add_header('Content-ID', '')
message.attach(msgImage)
try:
? ? #純粹的ssl加密方式,通信過程加密,郵件數(shù)據(jù)安全
? ? smtp = smtplib.SMTP_SSL(smtpHost,sslPort)
? ? smtp.ehlo()
? ? smtp.login(username,password)
? ? #發(fā)送郵件
? ? smtp.sendmail(fromMail,toMail,message.as_string())
? ? smtp.close()
? ? print 'OK'
except Exception as e:
? ? print e