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


Posted in Python onJanuary 29, 2018

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

以上这篇浅谈Python用QQ邮箱发送邮件时授权码的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python使用reportlab画图示例(含中文汉字)
Dec 03 Python
Python中Class类用法实例分析
Nov 12 Python
Python正则表达式分组概念与用法详解
Jun 24 Python
Python中Selenium模拟JQuery滑动解锁实例
Jul 26 Python
Win8下python3.5.1安装教程
Jul 29 Python
Python使用百度api做人脸对比的方法
Aug 28 Python
python常用排序算法的实现代码
Nov 08 Python
Python FtpLib模块应用操作详解
Dec 12 Python
利用Tensorflow构建和训练自己的CNN来做简单的验证码识别方式
Jan 20 Python
python有几个版本
Jun 17 Python
jupyter notebook保存文件默认路径更改方法汇总(亲测可以)
Jun 09 Python
Python中的pprint模块
Nov 27 Python
Python实现识别手写数字 简易图片存储管理系统
Jan 29 #Python
详解Python自建logging模块
Jan 29 #Python
python抓取网页中链接的静态图片
Jan 29 #Python
Python实现识别手写数字 Python图片读入与处理
Mar 23 #Python
Python实现PS滤镜特效Marble Filter玻璃条纹扭曲效果示例
Jan 29 #Python
Python实现识别手写数字大纲
Jan 29 #Python
django文档学习之applications使用详解
Jan 29 #Python
You might like
php/js获取客户端mac地址的实现代码
2013/07/08 PHP
PHP5.3连接Oracle客户端及PDO_OCI模块的安装方法
2016/05/13 PHP
php实现通过soap调用.Net的WebService asmx文件
2017/02/27 PHP
Laravel框架运行出错提示RuntimeException No application encryption key has been specified.解决方法
2019/04/02 PHP
PHP number_format函数原理及实例解析
2020/07/14 PHP
JQuery困惑—包装集 DOM节点
2009/10/16 Javascript
jquery each()源代码
2011/02/14 Javascript
fmt:formatDate的输出格式详解
2014/01/09 Javascript
使用javascript为网页增加夜间模式
2014/01/26 Javascript
node.js中的buffer.Buffer.byteLength方法使用说明
2014/12/10 Javascript
js实现带关闭按钮始终显示在网页最底部工具条的方法
2015/03/02 Javascript
JavaScript实现自动弹出窗口并自动关闭窗口的方法
2015/08/06 Javascript
javascript精确统计网站访问量实例代码
2015/12/19 Javascript
jQuery Mobile中的button按钮组件基础使用教程
2016/05/23 Javascript
原生态js,鼠标按下后,经过了那些单元格的简单实例
2016/08/11 Javascript
JS实现太极旋转思路分析
2016/12/09 Javascript
温故知新——JavaScript中的字符串连接问题最全总结(推荐)
2017/08/21 Javascript
Ant Design Vue table中列超长显示...并加提示语的实例
2020/10/31 Javascript
简单易懂的python环境安装教程
2017/07/13 Python
python 通过 socket 发送文件的实例代码
2018/08/14 Python
python中的列表与元组的使用
2019/08/08 Python
numpy:找到指定元素的索引示例
2019/11/26 Python
python解释器安装教程的方法步骤
2020/07/02 Python
如何表示python中的相对路径
2020/07/08 Python
Python中全局变量和局部变量的理解与区别
2021/02/07 Python
CSS3 重置iphone浏览器按钮input,select等表单元素的默认样式
2014/10/11 HTML / CSS
利用CSS3的border-radius绘制太极及爱心图案示例
2016/05/17 HTML / CSS
法学专业毕业生自荐信范文
2013/12/18 职场文书
关于读书的演讲稿1000字
2014/08/27 职场文书
乡镇干部先进性教育活动个人整改措施
2014/09/16 职场文书
个人对照检查材料思想汇报
2014/09/26 职场文书
2014年六五普法工作总结
2014/11/25 职场文书
写给消防战士们的一封慰问信
2019/10/07 职场文书
opencv读取视频并保存图像的方法
2021/06/04 Python
vue实现列表拖拽排序的示例代码
2022/04/08 Vue.js
Python几种酷炫的进度条的方式
2022/04/11 Python