使用python发送QQ邮件

  这里用到了Python的两个包来发送邮件: smtplib 和 email 。
  Python 的 email 模块里包含了许多实用的邮件格式设置函数,可以用来创建邮件“包裹”。使用的 MIMEText 对象,为底层的 MIME(Multipurpose Internet MailExtensions,多用途互联网邮件扩展类型)协议传输创建了一封空邮件,最后通过高层的SMTP 协议发送出去。 MIMEText 对象 msg 包括收发邮箱地址、邮件正文和主题,Python 通过它就可以创建一封格式正确的邮件。smtplib 模块用来设置服务器连接的相关信息。

  要想通过QQ邮箱来发送邮件,需要开启QQ邮箱的设置-账户里SMTP服务,接下来会通过发送短信验证来获得授权码,有了授权码后就可以在代码里添加了。

  接下来看看QQ的邮件服务器配置:

根据此配置来设置smtplib.SMTP_SSL()函数的参数。

具体代码如下:

#coding=utf-8
import smtplib
from email.mime.text import MIMEText
msg_from='xxxxxxxxx@qq.com'                                 #发送方邮箱
passwd='abcdefghigklmnop'                                   #填入发送方邮箱的授权码
msg_to='xxxxx@foxmail.com'                                  #收件人邮箱
                            
subject="python邮件测试"                                     #主题     
content="这是我使用python smtplib及email模块发送的邮件"       #正文
msg = MIMEText(content)
msg['Subject'] = subject
msg['From'] = msg_from
msg['To'] = msg_to
try:
    s = smtplib.SMTP_SSL("smtp.qq.com",465)          #邮件服务器及端口号
    s.login(msg_from, passwd)
    s.sendmail(msg_from, msg_to, msg.as_string())
    print "发送成功"
except s.SMTPException,e:
    print "发送失败"
finally:
    s.quit()

来看一下效果,发送成功!

posted @ 2017-04-12 22:10  lovealways  阅读(26172)  评论(7编辑  收藏  举报