Python使用QQ邮箱发送Email的方法实例


Posted in Python onFebruary 09, 2017

前言

其实Python使用QQ邮箱发送Email代码很简单,短短几行代码就可以实现这个功能。

使用到的模块有smtplib和email这个两个模块,关于这两个模块的方法就不多说了。不了解的朋友们可以查看这篇文章:python中使用smtplib和email模块发送邮件实例

我们先说说网上常用的使用这那两个模块发送邮件的方法

代码如下:

import smtplib
from email.mime.text import MIMEText
from email.header import Header

def SendEmail(fromAdd, toAdd, subject, attachfile, htmlText):
 strFrom = fromAdd;
 strTo = toAdd;
 msg =MIMEText(htmlText);
 msg['Content-Type'] = 'Text/HTML';
 msg['Subject'] = Header(subject,'gb2312');
 msg['To'] = strTo;
 msg['From'] = strFrom;
 
 smtp = smtplib.SMTP('smtp.qq.com');
 smtp.login('501257367@qq.com','password');
 try:
 smtp.sendmail(strFrom,strTo,msg.as_string());
 finally:
 smtp.close;

if __name__ == "__main__":
 SendEmail("501257367@qq.com","501257367@qq.com","","hello","hello world");

运行结果:

smtplib.SMTPAuthenticationError: (530, 'Error: A secure connection is requiered(such as ssl). More information at http://service.mail.qq.com/cgi-bin/help?id=28')

报错,需要一个安全的连接,例如SSL,因此接下来我们会使用SSL的方式去登录,但是在那之前,我们需要做一些准备,打开qq邮箱,点击设置->

账户,找到POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务,开启IMAP/SMTP服务,然后根据要求使用手机发送到指定号码,获取授权码,

这个授权码就是你接下来登录要使用的密码,配置完成,上代码

import smtplib
from email.mime.text import MIMEText
_user = "你的qq邮箱"
_pwd = "你的授权码"
_to = "501257367@163.com"

msg = MIMEText("Test")
msg["Subject"] = "don't panic"
msg["From"] = _user
msg["To"] = _to

try:
 s = smtplib.SMTP_SSL("smtp.qq.com", 465)
 s.login(_user, _pwd)
 s.sendmail(_user, _to, msg.as_string())
 s.quit()
 print "Success!"
except smtplib.SMTPException,e:
 print "Falied,%s"%e

运行结果如下:

Python使用QQ邮箱发送Email的方法实例

总结

好了,大功告成!以上就是这篇文章的全部内容了,希望本文的内容对大家学习或者使用python能带来一定的帮助,如果有疑问大家可以留言交流。

Python 相关文章推荐
Python中使用异常处理来判断运行的操作系统平台方法
Jan 22 Python
Python for Informatics 第11章之正则表达式(二)
Apr 21 Python
利用python打印出菱形、三角形以及矩形的方法实例
Aug 08 Python
Python基于identicon库创建类似Github上用的头像功能
Sep 25 Python
pandas 空的dataframe 插入列名的示例
Oct 30 Python
python 实现倒排索引的方法
Dec 25 Python
django创建最简单HTML页面跳转方法
Aug 16 Python
pytorch sampler对数据进行采样的实现
Dec 31 Python
Python写出新冠状病毒确诊人数地图的方法
Feb 12 Python
Python安装OpenCV的示例代码
Mar 05 Python
python解决12306登录验证码的实现
Apr 18 Python
Python写情书? 10行代码展示如何把情书写在她的照片里
Apr 21 Python
python3中bytes和string之间的互相转换
Feb 09 #Python
python实现下载文件的三种方法
Feb 09 #Python
Python如何实现守护进程的方法示例
Feb 08 #Python
详解Python中表达式i += x与i = i + x是否等价
Feb 08 #Python
Python实现的多线程http压力测试代码
Feb 08 #Python
Python实现定时任务
Feb 08 #Python
python使用matplotlib绘制柱状图教程
Feb 08 #Python
You might like
php定时计划任务的实现方法详解
2013/06/06 PHP
PHP父类调用子类方法的代码例子
2014/04/09 PHP
PHP验证码生成原理和实现
2016/01/24 PHP
php实现的mongoDB单例模式操作类
2018/01/20 PHP
php读取本地json文件的实例
2018/03/07 PHP
Laravel 验证码认证学习记录小结
2019/12/20 PHP
jquery 结合C#后台的数组对文章的关键字自动添加链接的代码
2011/07/15 Javascript
jquery限定文本框只能输入数字即整数和小数
2013/11/29 Javascript
Javascript中常见的校验如域名、手机、邮箱等等
2014/01/02 Javascript
JavaScript中实现异步编程模式的4种方法
2014/09/24 Javascript
15个jquery常用方法、小技巧分享
2015/01/13 Javascript
js实现仿百度汽车频道选择汽车图片展示实例
2015/05/06 Javascript
果断收藏9个Javascript代码高亮脚本
2016/01/06 Javascript
BootStrap tab选项卡使用小结
2020/08/09 Javascript
纯js模仿windows系统日历
2017/02/04 Javascript
Vue组件模板形式实现对象数组数据循环为树形结构(实例代码)
2017/07/31 Javascript
react native实现往服务器上传网络图片的实例
2017/08/07 Javascript
全面解析jQuery中的$(window)与$(document)的用法区别
2017/08/15 jQuery
AngularJS对动态增加的DOM实现ng-keyup事件示例
2018/03/12 Javascript
JavaScript原型对象原理与应用分析
2018/12/27 Javascript
axios 实现post请求时把对象obj数据转为formdata
2019/10/31 Javascript
详解vue-router的Import异步加载模块问题的解决方案
2020/05/13 Javascript
详解uniapp的全局变量实现方式
2021/01/11 Javascript
python读csv文件时指定行为表头或无表头的方法
2019/06/26 Python
Python中url标签使用知识点总结
2020/01/16 Python
Python控制台输出时刷新当前行内容而不是输出新行的实现
2020/02/21 Python
使用OpenCV校准鱼眼镜头的方法
2020/11/26 Python
用HTML5.0制作网页的教程
2010/05/30 HTML / CSS
JAVA高级程序员面试题
2013/09/06 面试题
物业管理公司实习生自我鉴定
2013/09/19 职场文书
专业销售业务员求职信
2013/11/18 职场文书
物流司机岗位职责
2013/12/28 职场文书
毕业生代领毕业材料的授权委托书
2014/09/29 职场文书
2014年高中班主任工作总结
2014/11/08 职场文书
2014年学校工作总结
2014/11/20 职场文书
导游词之杭州岳王庙
2019/11/13 职场文书