使用python发送QQ邮件

SMTP介绍

SMTP是发送邮件的协议,Python内置对SMTP的支持,可以发送纯文本邮件、HTML邮件以及带附件的邮件。

Python对SMTP支持有 smtplibemail 两个模块,email负责构造邮件,smtplib负责发送邮件。

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

发送QQ邮件

开启QQ邮箱SMTP服务,获得授权码

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

这里写图片描述
SMTP设置

这里写图片描述
授权码

QQ邮件服务器配置

这里写图片描述

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

具体代码

import smtplib
from email.mime.text import MIMEText
msg_from='xxxxxxxxx@qq.com'                                 #发送方邮箱
passwd='abcdefghigklmnop'                                   #填入发送方邮箱的授权码
msg_to='xxxxx@qq.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)                               #登录SMTP服务器
    s.sendmail(msg_from, msg_to, msg.as_string())#发邮件 as_string()把MIMEText对象变成str
    print ("发送成功")
except s.SMTPException:
    print ("发送失败")
finally:
    s.quit()

发送效果

这里写图片描述

发送HTML邮件以及带附件的邮件

参考廖雪峰python教程:SMTP发送邮件

参考链接

廖雪峰python教程:SMTP发送邮件

使用python发送QQ邮件

  • 2
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值