python 发个邮件

#!/usr/bin/env python3
#coding: utf-8
from email.mime.text import MIMEText
from email.header import Header
import smtplib, os
from email.MIMEMultipart import MIMEMultipart
from email.MIMEBase import MIMEBase
from email.MIMEText import MIMEText
from email.Utils import COMMASPACE, formatdate
from email import Encoders
import glob  
import commands


def send_mail(send_from, send_to, subject, text, files, server):
    assert type(send_to)==list
    assert type(files)==list

    msg = MIMEMultipart()
    msg['From'] = send_from
    msg['To'] = COMMASPACE.join(send_to)
    msg['Date'] = formatdate(localtime=True)
    msg['Subject'] = subject

    msg.attach( MIMEText(text))

    for f in files:
        part = MIMEBase('application', "octet-stream")
        part.set_payload(open(f,"rb").read())
        Encoders.encode_base64(part)
        part.add_header('Content-Disposition', 'attachment; filename="%s"' % os.path.basename(f))
        msg.attach(part)

    smtp = smtplib.SMTP(server)
    smtp.sendmail(send_from, send_to, msg.as_string())
    smtp.close()

if __name__ == '__main__' :  
    send_from = '[email protected]'
    send_to = ['[email protected]']
    subject = '9月数据'
    text = '请查收'
    files =  glob.glob(r"/data/song/cbu-peak*.xlsx")    #get file list by diretory
    server =  'corp.chinacache.com'
    send_mail(send_from,send_to,subject,text,files,server)

    commands.getstatusoutput("for files in `ls *xlsx`; do  mv  $files ${files}ts; done")


 

你可能感兴趣的:(python)