python发送邮件脚本
1 #!/usr/bin/env python 2 #-*- coding:utf-8 -*- 3 import sys, os, re, urllib, urlparse 4 import smtplib 5 import traceback 6 from email.mime.text import MIMEText 7 from email.mime.multipart import MIMEMultipart 8 9 def sendmail(subject,msg,toaddrs,fromaddr,smtpaddr,password): 10 ''''' 11 @subject:邮件主题 12 @msg:邮件内容 13 @toaddrs:收信人的邮箱地址 14 @fromaddr:发信人的邮箱地址 15 @smtpaddr:smtp服务地址,可以在邮箱看,比如163邮箱为smtp.163.com 16 @password:发信人的邮箱密码 17 ''' 18 mail_msg = MIMEMultipart() 19 if not isinstance(subject,unicode): 20 subject = unicode(subject, 'utf-8') 21 mail_msg['Subject'] = subject 22 mail_msg['From'] =fromaddr 23 mail_msg['To'] = ','.join(toaddrs) 24 mail_msg.attach(MIMEText(msg, 'html', 'utf-8')) 25 try: 26 s = smtplib.SMTP() 27 s.connect(smtpaddr) #连接smtp服务器 28 s.ehlo() 29 s.starttls() 30 s.login(fromaddr,password) #登录邮箱 31 s.sendmail(fromaddr, toaddrs, mail_msg.as_string()) #发送邮件 32 s.quit() 33 except Exception,e: 34 print "Error: unable to send email" 35 print traceback.format_exc() 36 37 if __name__ == '__main__': 38 fromaddr = "lordhaart@myhexin.com" 39 smtpaddr = "mail.myhexin.com" 40 toaddrs = ["test1@myhexin.com","test2@myhexin.com"] 41 subject = "测试邮件" 42 password = "xxxxxxxx" 43 msg = "测试一下" 44 sendmail(subject,msg,toaddrs,fromaddr,smtpaddr,password)