#!/usr/bin/env python #-*- coding:utf-8 -*- from email import encoders from email.header import Header from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipart from email.mime.base import MIMEBase from email.utils import parseaddr, formataddr import smtplib def _format_addr(s): name, addr = parseaddr(s) return formataddr((Header(name, \'utf-8\').encode(), addr)) #from_addr = input(\'From: \') #password = input(\'Password: \') #to_addr = input(\'To: \') #smtp_server = input(\'SMTP server: \') from_addr=\'jusda-it-infra@mail.jusdascm.com\' password=\'JusdaG1702543\' to_addr=\'1766070823@qq.com\' smtp_server=\'smtp.mxhichina.com\' # 邮件对象: msg = MIMEMultipart() msg[\'From\'] = _format_addr(\'告警服务器<%s>\' % from_addr) msg[\'To\'] = _format_addr(\'Evmi 服务器运维人员<%s>\' % to_addr) msg[\'Subject\'] = Header(\'Evmi JOBs 告警表格汇总\', \'utf-8\').encode() # 邮件正文是MIMEText: msg.attach(MIMEText(\'EVMI服务器10.134.167.126计划任务异常告警发送\', \'plain\', \'utf-8\')) # 添加附件就是加上一个MIMEBase,从本地读取一个图片: with open(\'\'\'F:\\data.xls\'\'\', \'rb\') as f: # 设置附件的MIME和文件名,这里是png类型: mime = MIMEBase(\'image\', \'png\', filename=\'11.xlsx\') # 加上必要的头信息: mime.add_header(\'Content-Disposition\', \'attachment\', filename=\'a11.xlsx\') mime.add_header(\'Content-ID\', \'<0>\') mime.add_header(\'X-Attachment-Id\', \'0\') # 把附件的内容读进来: mime.set_payload(f.read()) # 用Base64编码: encoders.encode_base64(mime) # 添加到MIMEMultipart: msg.attach(mime) server = smtplib.SMTP(smtp_server, 25) server.set_debuglevel(1) server.login(from_addr, password) server.sendmail(from_addr, [to_addr], msg.as_string()) server.quit()
相关文章: