国际邮箱好像都没问题,类似gmail,
就是国内的邮箱有一些问题,比如 mail.139.com
因此还是得进行一下处理
参看这个链接 http://suzhouclark.itpub.net/post/7184/484998
主要是如下的一段
msgText = MIMEText(plainText, 'plain','gb2312')
msgHtml = MIMEText(htmlText, 'html','gb2312')
整个发邮件的代码也很短
#!/usr/bin/env python
# -*- coding: utf8 -*-
#导入smtplib和MIMEText
import smtplib
from email.mime.text import MIMEText
#############
#要发给谁,这里发给2个人
mailto_list=["
[email protected]","
[email protected]","
[email protected]","
[email protected]"]
#####################
#设置服务器,用户名、口令以及邮箱的后缀
mail_host="smtp.126.com"
mail_user="xxxxxx"
mail_pass="xxxxxxx"
mail_postfix="126.com"
######################
def send_mail(to_list,sub,content):
'''
to_list:发给谁
sub:主题
content:内容
send_mail("
[email protected]","sub","content")
'''
me=mail_user+"<"+mail_user+"@"+mail_postfix+">"
#msg = MIMEText(content)
msg=MIMEText(content, 'plain','gb18030')
msg['Subject'] = sub
msg['From'] = me
msg['To'] = ";".join(to_list)
try:
s = smtplib.SMTP()
s.connect(mail_host)
s.login(mail_user,mail_pass)
s.sendmail(me, to_list, msg.as_string())
s.close()
return True
except Exception, e:
print str(e)
return False
if __name__ == '__main__':
if send_mail(mailto_list,"[报警]test,e.g.dangdang模板失效","具体链接为:。。。。"):
print "发送成功"
else:
print "发送失败"