浅谈Python用QQ邮箱发送邮件时授权码的问题

作者:wateryouyouyou 时间:2021-10-30 13:06:59 

QQ邮箱最新推出了一个授权码,需已验证的手机号向QQ邮箱服务器发送一条短信获得。该授权码用于第三方客户端登录,代替了第三方登录时使用的个人邮箱密码。

在测试过程中遇到两个问题:

1.提示需建立SSL安全连接。于是将smtplib.SMTP() 改成了smtplib.SMTP_SSL()

2.运行代码后,程序一直运行,但没有任何反应,等了五分钟左右,最后只好ctrl+c停止。查原因才知道,QQ邮箱的SMTP服务端口不是默认的25.改为465之后就好了。

(使用标准的25端口连接SMTP服务器时,使用的是明文传输,发送邮件的整个过程可能会被窃听。要更安全地发送邮件,可以加密SMTP会话,实际上就是先创建SSL安全连接,然后再使用SMTP协议发送邮件。)

3.运行提示535错误,说授权error。才知道是那个授权码的原因。于是赶紧获取邮箱的授权码。

浅谈Python用QQ邮箱发送邮件时授权码的问题

3.运行提示535错误,说授权error。才知道是那个授权码的原因。于是赶紧获取邮箱的授权码。

浅谈Python用QQ邮箱发送邮件时授权码的问题

最后测试终于好了,代码如下:


#coding:utf-8
import smtplib
from email.mime.text import MIMEText
from email.header import Header
# 第三方 SMTP 服务
mail_host="smtp.qq.com" #设置服务器
mail_user="******@qq.com" #用户名
mail_pass="*********" #口令,QQ邮箱是输入授权码,在qq邮箱设置 里用验证过的手机发送短信获得,不含空格

sender = '******qq.com'
receivers = ['******@qq.com','****@sina.com.cn'] # 接收邮件,可设置为你的QQ邮箱或者其他邮箱
message = MIMEText('a test for python', 'plain', 'utf-8')
message['From'] = Header("ppyy", 'utf-8')
message['To'] = Header("you", 'utf-8')
subject = 'my test'
message['Subject'] = Header(subject, 'utf-8')
try:
smtpObj = smtplib.SMTP_SSL(mail_host, 465)
smtpObj.login(mail_user,mail_pass)
smtpObj.sendmail(sender, receivers, message.as_string())
smtpObj.quit()
print u"邮件发送成功"
except smtplib.SMTPException,e:
print e

来源:http://blog.csdn.net/wateryouyo/article/details/51766345

标签:Python,QQ邮箱,发送邮件,授权码
0
投稿

猜你喜欢

  • 使用python turtle画高达

    2021-11-05 20:47:48
  • python抓取网页内容并进行语音播报的方法

    2021-03-08 14:02:53
  • python基础之reverse和reversed函数的介绍及使用

    2022-10-19 19:12:18
  • 运用ASP调用数据库中视图及存储过程

    2008-02-03 15:33:00
  • Python list与NumPy array 区分详解

    2021-08-25 04:12:37
  • Numpy与Pytorch 矩阵操作方式

    2021-11-19 01:10:07
  • 从零学Python之入门(五)缩进和选择

    2022-03-04 13:11:24
  • HTML5 Web Storage全解析

    2010-06-26 13:06:00
  • python 负数取模运算实例

    2022-06-17 00:50:49
  • js加密页面代码生成器

    2007-10-12 13:40:00
  • asp HTTP_X_FORWARDED_FOR和REMOTE_ADDR

    2010-07-02 12:33:00
  • python中global用法实例分析

    2023-09-16 08:33:47
  • 解读HTML:大厦的基石

    2008-12-01 12:57:00
  • 如何在2003系统注册fso组件

    2010-11-29 19:55:00
  • python偏函数partial用法

    2023-09-24 22:25:06
  • 在VS2017中用C#调用python脚本的实现

    2021-09-19 00:59:06
  • 如何使用PHP计算上一个月的今天

    2023-11-15 14:16:25
  • 对python同一个文件夹里面不同.py文件的交叉引用方法详解

    2023-12-24 00:54:27
  • PHP中SESSION使用中的一点经验总结

    2023-11-19 11:48:54
  • python非标准时间的转换

    2022-04-12 17:37:52
  • asp之家 网络编程 m.aspxhome.com