python 发邮件。。。

来源:互联网 发布:vb中阶乘 编辑:程序博客网 时间:2024/06/06 00:00
#!/usr/bin/env python# -*- coding: utf-8 -*-import smtplib,sysimport datetimeimport osfrom email.MIMEText import MIMETextfrom email.mime.multipart import MIMEMultipartfrom email.mime.base import MIMEBasefrom email import encoderslastDate = datetime.date.today() - datetime.timedelta(days=1)mailto_list=["1@1.com", "2@1.com", "3@1.com", "4@1.com"]files = ['f1.txt', 'f2.txt']def send_mail(to_list, sub, content):    #setting: who send the mail    mail_host="smtp.163.com"    mail_user="xxx"    mail_pass="xxx"    mail_postfix="163.com"    me="test<" + mail_user + "@" + mail_postfix + ">"    #msg = MIMEText(content)    msg = MIMEMultipart()    msg['Subject']= sub    msg['From'] = me    msg['To'] ="1@1.com"    for f in files:
<p>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)</p><p>    try:        s = smtplib.SMTP()        s.connect(mail_host)        s.login(mail_user, mail_pass)        s.sendmail(me, to_list, msg.as_string())        s.close()        print 'done'        return True    except Exception, e:        print 'ERROR send mail failed'        print str(e)        return False</p><p>if __name__ == '__main__':    if send_mail(mailto_list, "stat at " + str(lastDate), "please see attchments"):        print "send success"    else:</p><p>        print "send failed"</p><p> </p><p> </p><p> </p><p>没办法, 经常有用, 自己又不会写。。。就放这了。</p>

0 0