Python 发送带 附件 邮件 脚本

 

Python 发送普通邮件的脚本参考:

            Python 发送 RMAN 备份 Log 脚本

http://www.cndba.cn/Dave/article/419

 

 

在这篇里主要演示一个Python 发送附件邮件的脚本。

 

参考Pytheon 文档:

http://docs.python.org/release/2.4.3/lib/node597.html

 

 

Python 版本:2.4.3

 

 

[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'

 

 

 

 

 

 

 

-------------------------------------------------------------------------------------------------------

QQ: 492913789
Email: ahdba@qq.com
Blog: http://www.cndba.cn/dave

DBA1 群:62697716();   DBA2 群:62697977()   DBA3 群:62697850()  

DBA 超级群:63306533();  DBA4 群: 83829929  DBA5群: 142216823   

聊天 群:40132017   聊天2群:69087192

--加群需要在备注说明Oracle表空间和数据文件的关系,否则拒绝申请

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值