浅谈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生成器实现微线程编程的教程
Apr 13 Python
在Python的Django框架的视图中使用Session的方法
Jul 23 Python
Python中return语句用法实例分析
Aug 04 Python
Python字符串、元组、列表、字典互相转换的方法
Jan 23 Python
Python中使用支持向量机(SVM)算法
Dec 26 Python
Python中跳台阶、变态跳台阶与矩形覆盖问题的解决方法
May 19 Python
Python分布式进程中你会遇到的问题解析
May 28 Python
Python3基础教程之递归函数简单示例
Jun 07 Python
python如何停止递归
Sep 09 Python
5 分钟读懂Python 中的 Hook 钩子函数
Dec 09 Python
matplotlib更改窗口图标的方法示例
Feb 03 Python
OpenCV-Python实现人脸美白算法的实例
Jun 11 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
世界上第一台立体声收音机
2021/03/01 无线电
PHP新手上路(四)
2006/10/09 PHP
golang与php实现计算两个经纬度之间距离的方法
2016/07/22 PHP
PHP观察者模式示例【Laravel框架中有用到】
2018/06/15 PHP
javascript中利用数组实现的循环队列代码
2010/01/24 Javascript
动态加载图片路径 保持JavaScript控件的相对独立性
2010/09/03 Javascript
jquery下jstree简单应用 - v1.0
2011/04/14 Javascript
jquery 插件学习(六)
2012/08/06 Javascript
用jquery写的菜单从左往右滑动出现
2014/04/11 Javascript
jquery 表格排序、实时搜索表格内容(附图)
2014/05/19 Javascript
使用AngularJS对路由进行安全性处理的方法
2015/06/18 Javascript
JavaScript多线程详解
2015/08/12 Javascript
jQuery无刷新切换主题皮肤实例讲解
2015/10/21 Javascript
Bootstrap每天必学之按钮(Button)插件
2016/04/25 Javascript
jQuery ajaxSubmit 实现ajax提交表单局部刷新
2016/07/04 Javascript
浅谈js控制li标签排序问题 js调用php函数的方法
2016/10/16 Javascript
canvas 绘制圆形时钟
2017/02/22 Javascript
bootstrap datetimepicker日期插件超详细使用方法介绍
2017/02/23 Javascript
vue教程之toast弹框全局调用示例详解
2020/08/24 Javascript
node文件批量重命名的方法示例
2017/10/23 Javascript
微信小程序使用progress组件实现显示进度功能【附源码下载】
2017/12/12 Javascript
JS兼容所有浏览器的DOMContentLoaded事件
2018/01/12 Javascript
使用webpack搭建vue项目及注意事项
2019/06/10 Javascript
你准备好迎接vue3.0了吗
2020/04/28 Javascript
vue 数据操作相关总结
2020/12/17 Vue.js
[56:45]DOTA2上海特级锦标赛D组小组赛#1 EG VS COL第一局
2016/02/28 DOTA
python删除过期log文件操作实例解析
2018/01/31 Python
python判断自身是否正在运行的方法
2019/08/08 Python
英国演唱会订票网站:Ticket Selection
2018/03/27 全球购物
德国网上花店:Valentins
2018/08/15 全球购物
7 For All Mankind官网:美国加州洛杉矶的高级牛仔服装品牌
2018/12/20 全球购物
2015年税务稽查工作总结
2015/05/26 职场文书
区域销售大会开幕词
2016/03/04 职场文书
2016年妇联“6﹒26国际禁毒日”宣传活动总结
2016/04/05 职场文书
python 远程执行命令的详细代码
2022/02/15 Python
Python  lambda匿名函数和三元运算符
2022/04/19 Python