Python 发送带 附件 邮件 脚本

[oracle@rac1 ~]$ cat sendAttEmail.py 

#!/usr/bin/python

#coding=gbk

#created by tianlesoftware

#2011/4/12

 

import os

import sys

import smtplib

import mimetypes

from email.MIMEText import MIMEText

from email.MIMEImage import MIMEImage

from email.MIMEMultipart import MIMEMultipart

 

 

#红色标记的修改成自己的信息

SMTP_SERVER='192.168.1.100'

EMAIL_USER=user

EMAIL_PASSWD=pwd

EMAIL_SUBJECT='This is a test email'

FROM_USER='dvd.dba@gmail.com'

TO_USERS=['dvd.dba@gmail.com','tianlesoftware@vip.qq.com']

 

 

def mysendmail(fromaddr,toaddrs,subject):

        COMMASPACE=','

        msg = MIMEMultipart()

        msg['From'] = fromaddr

        msg['To'] = COMMASPACE.join(toaddrs)

        msg['Subject'] = subject

 

        #邮件内容

        txt = MIMEText("this is the contents of the email!")

        msg.attach(txt)  

 

        #添加附件

        fileName = r'/home/oracle/awr.html'

        ctype, encoding = mimetypes.guess_type(fileName)

        if ctype is None or encoding is not None:

            ctype = 'application/octet-stream'

        maintype, subtype = ctype.split('/', 1)

        att = MIMEImage((lambda f: (f.read(), f.close()))(open(fileName, 'rb'))[0], _subtype = subtype)

        att.add_header('Content-Disposition', 'attachment', filename = fileName)

        msg.attach(att)  

        #添加附件如果有多个附件,就多添加几个

        fileName = r'/home/oracle/awr.html'

        ctype, encoding = mimetypes.guess_type(fileName)

        if ctype is None or encoding is not None:

            ctype = 'application/octet-stream'

        maintype, subtype = ctype.split('/', 1)

        att = MIMEImage((lambda f: (f.read(), f.close()))(open(fileName, 'rb'))[0], _subtype = subtype)

        att.add_header('Content-Disposition', 'attachment', filename = fileName)

        msg.attach(att)  

 

 

        server=smtplib.SMTP(SMTP_SERVER)

        server.login(EMAIL_USER,EMAIL_PASSWD)

        server.sendmail(fromaddr,toaddrs,msg.as_string())

        server.quit()

 

if __name__=='__main__':

        mysendmail(FROM_USER, TO_USERS, EMAIL_SUBJECT)

        #print 'send successful'

上一篇:linux磁盘管理


下一篇:稳定+性能+价格,阿里云发力ECS企业级产品