Python 通过连接qq邮箱服务器发送邮件

python的smtplib提供了一种很方便的途径发送电子邮件。它对smtp协议进行了简单的封装。

发送邮件主要用到了smtplib 和 email


代码非常简单,上代码:

import smtplib
from email.mime.text import MIMEText
from email.header import Header
mail_host = "smtp.qq.com"
mail_user = "924816452@qq.com"
auth ="xxxxxxxxxxxxxxx"#这个是授权码
sender = "924816452@qq.com"
receivers = ["924816452@qq.com"]

message = MIMEText("门门邮件测试","plain","utf-8")
message['from'] = Header("this is the original","utf-8")
message['to'] = Header("this is the toer","utf-8")
subject = "this is the subject"
message['subject'] = Header(subject,"utf-8")
try:
	smtpObj = smtplib.SMTP_SSL()#建立smtp连接,qq邮箱必须用ssl边接,因此边接465端口
	smtpObj.connect(mail_host,465)
	smtpObj.login(mail_user,auth)#登陆
	smtpObj.sendmail(sender,receivers,message.as_string())#发送
	print("succeed sending")
except smtplib.SMTPException as err:
	print("can not send the email")
	print(str(err))

message是邮件的格式,符合smtp定义的格式,此处我们只需调用真充内容即可

主要由三个头和正文组成,三个头分别是 from,to subject.


如代码所示,登陆的时候用了授权码,授权码获取如下;

打开qq邮箱,点击设置->
账户,找到POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务,开启IMAP/SMTP服务,然后根据要求使用手机发送到指定号码,获取授权码。


这个小例子只是展示了最简单的功能,message还可以发送附件等

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值