<pre name="code" class="python">import os
import ConfigParser
import email
import mimetypes
from email.MIMEMultipart import MIMEMultipart
from email.MIMEText import MIMEText
from email.mime.image import MIMEImage
import smtplib
from email.base64mime import encode as encode_base64
type = ["AccumulativeDefectTrend","WeeklyDefectTrend","QAWeeklyDefectTrend","RDWeeklyDefectTrend"]
def parseimageFolder(folder):
#print os.listdir(folder)
return
def sendEmail(authInfo, fromAdd, toAdd, subject, plainText, htmlText):
global sal_version
strFrom = fromAdd
strTo = ','.join(toAdd)
server = authInfo.get('server')
user = authInfo.get('user')
passwd = authInfo.get('password')
if not (server and user and passwd) :
print 'incomplete login info, exit now'
return
msgRoot = email.MIMEMultipart.MIMEMultipart('related')
msgRoot['Subject'] = subject
msgRoot['From'] = strFrom
msgRoot['To'] = strTo
msgRoot.preamble = 'This is a multi-part message in MIME format.'
# Encapsulate the plain and HTML versions of the message body in an
# 'alternative' part, so message agents can decide which they want to display.
msgAlternative = MIMEMultipart('alternative')
msgRoot.attach(msgAlternative)
#text
#msgText = MIMEText(plainText, 'plain', 'utf-8')
#msgAlternative.attach(msgText)
#HTML
#msgText = email.MIMEText.MIMEText(htmlText, 'html', 'utf-8')
#msgAlternative.attach(msgText)
integer = 0
fp = open('SAL_regression_result_'+sal_version+'.txt', 'rb')
msgText = MIMEText(fp.read())
fp.close()
while integer < 1:
msgAlternative.attach(msgText)
# open image to send
project_order = 0
#fp = open('C:\\temp\\' + type[integer] + '_' +project[project_order] + '.png', 'rb')
att = MIMEText(open('SAL_regression_result_'+sal_version+'.txt', 'rb').read(), 'base64', 'gb2312')
att['content-type'] = 'application/octet-stream'
att['content-disposition'] = 'attachment;filename="SAL_regression_result_'+sal_version+'.txt"'
#fp1 = open('C:\\temp\\' + '1.png', 'rb')
#msgImage = MIMEImage(fp1.read())
#fp1.close()
#msgImage.add_header('Content-ID', '<image'+ str(project_order) +'>')
#msgRoot.attach(msgImage)
msgRoot.attach(att)
project_order = project_order +1
integer = integer +1
#send email
#smtp = smtplib.SMTP_SSL(server,465)
smtp = smtplib.SMTP()
#smtp.set_debuglevel(1)
smtp.connect(server)
#smtp.login(user, passwd)
#strTo=",".join(toAdd)
smtp.sendmail(strFrom, toAdd, msgRoot.as_string())
smtp.quit()
return
if __name__ == '__main__' :
cf = ConfigParser.ConfigParser()
cf.read("version.cfg")
version=cf.sections();
global sal_version
sal_version= cf.get(version[0],'SAL_Engine')
authInfo = {}
#authInfo['server'] = 'cdcexcas.tw.trendnet.org'
authInfo['server'] = '10.204.16.7'
#authInfo['server'] = 'smtp.163.com'
authInfo['user'] = ' '
authInfo['password'] = ' '
fromAdd = ''
toAdd = ['']
subject = 'SAL_regression_result'
plainText = 'plain text'
htmlText = '<B>BEP7.5 Detect Trend</B>'
temp = "c:\\temp"
#parseimageFolder(temp)
sendEmail(authInfo, fromAdd, toAdd, subject, plainText, htmlText)
print "send success"
08-06
08-06
12-29