2980315 发表于 2017-4-29 14:43:32

Python 发送带 附件 邮件 脚本

Python 发送普通邮件的脚本参考:
Python 发送 RMAN 备份 Log 脚本
http://blog.csdn.net/tianlesoftware/archive/2011/02/25/6206543.aspx


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

参考Pytheon 文档:
http://docs.python.org/release/2.4.3/lib/node597.html


Python 版本:2.4.3


$ 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')), _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')), _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'







-------------------------------------------------------------------------------------------------------
Blog: http://blog.csdn.net/tianlesoftware
Email: dvd.dba@gmail.com
DBA1 群:62697716(满); DBA2 群:62697977(满) DBA3 群:62697850(满)
DBA 超级群:63306533(满); DBA4 群: 83829929 DBA5群: 142216823
聊天 群:40132017 聊天2群:69087192
--加群需要在备注说明Oracle表空间和数据文件的关系,否则拒绝申请
页: [1]
查看完整版本: Python 发送带 附件 邮件 脚本