最近在同事的帮助下,尝试着用python写了一个发送邮件的小工具,可以省去配置mailrc参数的麻烦。 以下是示例:
[[email protected] scripts]# more sendmail.py #!/usr/bin/env python2 #coding: utf-8 import smtplib import datetime from email.mime.text import MIMEText from email.header import Header from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText from email.mime.image import MIMEImage sender = ‘[email protected]‘ receiver = [‘[email protected]‘,‘[email protected]‘] subject = ‘Pro_Weekly_DBmonitor‘ smtpserver = ‘mail.163.com‘ username = ‘monitor‘ password = ‘secrets‘ #f = open("/dba/dbaBackup/backup.log", "r") #content = f.read() #f.close() content = ‘More see the attached file‘ msg = MIMEMultipart(‘related‘) msg[‘Subject‘] = ‘PostgreSQL_MONITOR‘ --获取时间 today=datetime.datetime.now().strftime(‘%Y-%m-%d‘) --要发送的附件 file_name=‘/home/postgres/report/DB_‘+str(today)+‘.report.txt‘ att = MIMEText(open(file_name,‘rb‘).read(), ‘base64‘, ‘utf-8‘) att["Content-Type"] = ‘application/octet-stream‘ att["Content-Disposition"] = ‘attachment; filename="DB_report.txt"‘ msg.attach(att) --发送所需要调用的smtp smtp = smtplib.SMTP() smtp.connect(‘mail.163.com‘) smtp.login(username, password) smtp.sendmail(sender, receiver, msg.as_string()) smtp.quit()
经实践,可用。
时间: 2024-10-09 22:53:16