python3使用SMTP发送HTML格式邮件


Posted in Python onJune 19, 2018

一、设置开启SMTP服务并获取授权码

可以参考第一篇文章,这里不再赘述:【一】Python3使用SMTP发送简单文本邮件

二、使用Python3 发送HTML格式的邮件

0.使用的环境为:

Python 3.6.3 (64bit)
PyCharm 2017.3 (64bit)

1.实现代码:

import smtplib 
from email.header import Header 
from email.mime.text import MIMEText 
 
 
# 发件人和收件人 
sender = 'XXXXX@163.com' 
receiver = 'XXXXX@qq.com' 
 
# 所使用的用来发送邮件的SMTP服务器 
smtpserver = 'smtp.163.com' 
 
# 发送邮箱的用户名和授权码(不是登录邮箱的密码) 
username = 'XXXXX' 
password = 'XXXXX' 
 
# 邮件主题 
mail_title = '主题:测试报告3' 
 
# 读取html文件内容 
f = open('report_test.html', 'rb') # HTML文件默认和当前文件在同一路径下,若不在同一路径下,需要指定要发送的HTML文件的路径 
mail_body = f.read() 
f.close() 
 
# 邮件内容, 格式, 编码 
message = MIMEText(mail_body, 'html', 'utf-8') 
message['From'] = sender 
message['To'] = receiver 
message['Subject'] = Header(mail_title, 'utf-8') 
 
 
try: 
  smtp = smtplib.SMTP() 
  smtp.connect('smtp.163.com') 
  smtp.login(username, password) 
  smtp.sendmail(sender, receiver, message.as_string()) 
  print("发送邮件成功!!!") 
  smtp.quit() 
except smtplib.SMTPException: 
  print("发送邮件失败!!!")

2.同样,发送成功之后,如果在收件人的邮箱看不到邮件,可能是被当做垃圾邮件拦截了,可以去拦截记录里面找一下

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现系统状态监测和故障转移实例方法
Nov 18 Python
Python读取图片EXIF信息类库介绍和使用实例
Jul 10 Python
在Python中利用Pandas库处理大数据的简单介绍
Apr 07 Python
django 修改server端口号的方法
May 14 Python
Python爬虫 bilibili视频弹幕提取过程详解
Jul 31 Python
Python3变量与基本数据类型用法实例分析
Feb 14 Python
python使用梯度下降算法实现一个多线性回归
Mar 24 Python
python3 logging日志封装实例
Apr 08 Python
Python应用实现双指数函数及拟合代码实例
Jun 19 Python
如何用python免费看美剧
Aug 11 Python
基于python爬取链家二手房信息代码示例
Oct 21 Python
selenium.webdriver中add_argument方法常用参数表
Apr 08 Python
python3.X 抓取火车票信息【修正版】
Jun 19 #Python
python3使用SMTP发送简单文本邮件
Jun 19 #Python
Python基于pyCUDA实现GPU加速并行计算功能入门教程
Jun 19 #Python
python3第三方爬虫库BeautifulSoup4安装教程
Jun 19 #Python
python爬虫实例详解
Jun 19 #Python
Python实现的NN神经网络算法完整示例
Jun 19 #Python
python中的二维列表实例详解
Jun 19 #Python
You might like
BBS(php & mysql)完整版(四)
2006/10/09 PHP
php搜索文件程序分享
2015/10/30 PHP
3种php生成唯一id的方法
2015/11/23 PHP
PHP实现的浏览器检查类
2016/04/11 PHP
Yii2实现ActiveForm ajax提交
2017/05/26 PHP
php+js实现的无刷新下载文件功能示例
2019/08/23 PHP
PHP isset empty函数相关面试题及解析
2020/12/11 PHP
自己开发Dojo的建议框架
2008/09/24 Javascript
javawscript 三级菜单的实现原理
2009/07/01 Javascript
JavaScript 打地鼠游戏代码说明
2010/10/12 Javascript
使用jQuery全局事件ajaxStart为特定请求实现提示效果的代码
2010/12/30 Javascript
Extjs gridpanel 出现横向滚动条问题的解决方法
2011/07/04 Javascript
jQuery右键菜单contextMenu使用实例
2011/09/28 Javascript
node.js中的url.parse方法使用说明
2014/12/10 Javascript
jQuery图片轮播滚动切换代码分享
2020/04/20 Javascript
不用一句js代码初始化组件
2016/01/27 Javascript
jQuery获取cookie值及删除cookie用法实例
2016/04/15 Javascript
Jquery $when done then的用法详解
2016/05/20 Javascript
ionic实现可滑动的tab选项卡切换效果
2020/04/15 Javascript
利用transition实现文字上下抖动的效果
2017/01/21 Javascript
node.js学习笔记之koa框架和简单爬虫练习
2018/12/13 Javascript
Element el-button 按钮组件的使用详解
2021/02/01 Javascript
Python使用新浪微博API发送微博的例子
2014/04/10 Python
python调用windows api锁定计算机示例
2014/04/17 Python
使用Django的模版来配合字符串翻译工作
2015/07/27 Python
Linux系统上Nginx+Python的web.py与Django框架环境
2015/12/25 Python
PYTHON绘制雷达图代码实例
2019/10/15 Python
浅谈Python中的异常和JSON读写数据的实现
2020/02/27 Python
Python while true实现爬虫定时任务
2020/06/08 Python
python opencv图像处理(素描、怀旧、光照、流年、滤镜 原理及实现)
2020/12/10 Python
CSS3关于z-index不生效问题的解决
2020/02/19 HTML / CSS
新生儿未入户证明
2015/06/23 职场文书
儿童诗两首教学反思
2016/02/23 职场文书
springboot+zookeeper实现分布式锁
2022/03/21 Java/Android
Redis基本数据类型Set常用操作命令
2022/06/01 Redis
css让页脚保持在底部位置的四种方案
2022/07/23 HTML / CSS