浅谈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对两个有序列表进行合并和排序的例子
Jun 13 Python
Python两个整数相除得到浮点数值的方法
Mar 18 Python
Python中max函数用法实例分析
Jul 17 Python
详解Python3中yield生成器的用法
Aug 20 Python
详解python中xlrd包的安装与处理Excel表格
Dec 16 Python
pandas 获取季度,月度,年度首尾日期的方法
Apr 11 Python
windows7 32、64位下python爬虫框架scrapy环境的搭建方法
Nov 29 Python
使用TensorFlow实现简单线性回归模型
Jul 19 Python
python入门:argparse浅析 nargs='+'作用
Jul 12 Python
OpenCV Python实现图像指定区域裁剪
Mar 12 Python
python 实现"神经衰弱"翻牌游戏
Nov 09 Python
python使用yaml 管理selenium元素的示例
Dec 01 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 对输入信息的进行安全过滤的函数代码
2012/06/29 PHP
如何解决CI框架的Disallowed Key Characters错误提示
2013/07/05 PHP
ThinkPHP实现一键清除缓存方法
2014/06/26 PHP
php基于表单密码验证与HTTP验证用法实例
2015/01/06 PHP
PHP中soap用法示例【SoapServer服务端与SoapClient客户端编写】
2018/12/25 PHP
javascript 避免闭包引发的问题
2009/03/17 Javascript
javascript parseInt 大改造
2009/09/27 Javascript
jquery键盘事件使用介绍
2011/11/01 Javascript
通过JS自动隐藏手机浏览器的地址栏实现原理与代码
2013/01/02 Javascript
jquery实现checkbox 全选/全不选的通用写法
2014/02/22 Javascript
Javascript中数组sort和reverse用法分析
2014/12/30 Javascript
JavaScript6 let 新语法优势介绍
2016/07/15 Javascript
Laravel中常见的错误与解决方法小结
2016/08/30 Javascript
bootstrap快速制作后台界面
2016/12/05 Javascript
原生的强大DOM选择器querySelector介绍
2016/12/21 Javascript
canvas学习之API整理笔记(一)
2016/12/29 Javascript
JavaScript基本语法_动力节点Java学院整理
2017/06/26 Javascript
vue.js默认路由不加载linkActiveClass问题的解决方法
2017/12/11 Javascript
解决vue热替换失效的根本原因
2018/09/19 Javascript
JS实现关闭小广告特效
2021/01/29 Javascript
JavaScript手写数组的常用函数总结
2020/11/22 Javascript
使用Python脚本在Linux下实现部分Bash Shell的教程
2015/04/17 Python
Python的地形三维可视化Matplotlib和gdal使用实例
2017/12/09 Python
使用Python和Scribus创建一个RGB立方体的方法
2019/07/17 Python
将Pytorch模型从CPU转换成GPU的实现方法
2019/08/19 Python
django-crontab实现服务端的定时任务的示例代码
2020/02/17 Python
Python模拟登录requests.Session应用详解
2020/11/17 Python
plt.figure()参数使用详解及运行演示
2021/01/08 Python
百丽国际旗下购物网站:优购
2017/02/28 全球购物
求职信模版
2013/11/30 职场文书
毕业生就业推荐信范文
2013/12/01 职场文书
法人代表任命书范本
2014/06/05 职场文书
2015年事业单位工作总结
2015/04/27 职场文书
医院消毒隔离制度
2015/08/05 职场文书
六年级作文之预言作文
2019/10/25 职场文书
Nginx代理Redis哨兵主从配置的实现
2022/07/15 Servers