您的位置:首页 > 编程语言 > Python开发

用Python发邮件,QQ邮件,解决(Error: A secure connection is requiered(such as ssl))

2016-11-27 12:31 549 查看
用Python发邮件,QQ邮件

之前查的网上的代码 都有

503 ‘Error: A secure connection is requiered(such as ssl)’之类的Bug.

QQ邮箱要求ssl,smtp.qq.com 端口号465.

因此我们把smtplib.SMTP()改成smtplib.SMTP_SSL()

#-*-coding:utf-8-*-
#==========================================
# 导入smtplib和MIMEText
#==========================================
from email.mime.text import MIMEText
import smtplib
#==========================================
# 要发给谁,这里发给3个人
#==========================================
mailto_list=["xxxx@qq.com","zhoul14@mails.tsinghua.edu.cn"]
#==========================================
# 设置服务器,用户名、口令以及邮箱的后缀
#==========================================
mail_host="smtp.qq.com"
mail_user="你的用户名"
mail_pass="你的授权码"#qq要求授权码,密码不行,你要在手机发短信具体的上qq邮箱网站上看
mail_postfix="qq.com"
#==========================================
# 发送邮件
#==========================================
def send_mail(to_list,sub,content):
'''''
to_list:发给谁
sub:主题
content:内容
send_mail("xxx@xxxx.com","主题","内容")
'''
me=mail_user+"<"+mail_user+"@"+mail_postfix+">"
msg = MIMEText(content)
msg['Subject'] = sub
msg['From'] = me
msg['To'] = ";".join(to_list)
try:
s = smtplib.SMTP_SSL(mail_host, 465)
s.set_debuglevel(1)
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,"主题","内容"):
print "发送成功"
else:
print "发送失败"
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  邮件 python qq邮箱
相关文章推荐