python如何发送带有附件、正文为HTML的邮件


Posted in Python onFebruary 27, 2021

一、HTML格式怎么发送右键

1.准备HTML代码作为内容

2.把邮件的subtype设置为html

3.发送

4.举个例子:自己发给自己一个HTML格式的文件

from email.mime.text import MIMEText

​

main_content = """

    <!DOCTYPE html>

    <html lang = "en"

    <head>

      <meta charset = "UTF-8">

      <title>实例</title>

    </head>

    <body>

      <h1>这个是做测试用的html<h1>

    </body>

    </html>

    """

​

msg = MIMEText(main_content,"html","utf-8")

​

#构建发送者地址和登录信息

from_addr = "1215217867@qq.com"

from_pwd = ""

#构建邮件接受者的信息

to_addr = "1215217867@qq.com"

smtp_srv = "smtp.qq.com"

try:

  import smtplib

  srv = smtplib.SMTP_SSL(smtp_srv.encode(),465)

  srv.login(from_addr,from_pwd)

  srv.sendmail(from_addr,[to_addr],msg.as_string())

  srv.quit()

​

except Exception as a:

  print(a)

python如何发送带有附件、正文为HTML的邮件

二、发送带附件的邮件

1.可以把邮件看作是一个文本邮件和一个附件的合体

2.一封邮件如果涉及多个部分,需要使用MIMEMultipart格式构建

3.添加一个MIMEText正文

4.添加一个 MIMEBase或者MEMEText作为附件

5.举个例子:

from email.mime.text import MIMEText#构建附件使用

from email.mime.multipart import MIMEBase,MIMEMultipart#构建基础邮件使用

​

mail_mul = MIMEMultipart()#构建一个邮件对象

mail_text = MIMEText("Hello,I am liudana","plain","utf-8")#构建邮件正文

mail_mul.attach(mail_text)#把构建好的邮件正文附加到邮件中

#构建附件,需要从本地读入附件

#打开一个本地文件

#以rb格式打开

with open("00.TestCasePython.py","rb") as f:

  s = f.read()

  #设置附件的MIME和文件名

  m = MIMEText(s,"base64","utf-8")#类型是base64,这是邮件正文的格式,这里只需要记住就可以了

  m["Content-Type"] = "application/octet-stream"

  #需要注意

  #1.attachment后分号位英文状态

  #2.filename后面需要引号包裹,注意与外面引号错开

  m["Content-Disposition"] = "attachment;filename = '00.TestCasePython.py'"

  #添加到MIMEMultipart

  mail_mul.attach(m)

​

#构建发送者地址和登录信息

from_addr = "1215217867@qq.com"

from_pwd = "ysqmojzwkgfciccd"

#构建邮件接受者的信息

to_addr = "1215217867@qq.com"

smtp_srv = "smtp.qq.com"

try:

  import smtplib

  srv = smtplib.SMTP_SSL(smtp_srv.encode(),465)

  srv.login(from_addr,from_pwd)

  srv.sendmail(from_addr,[to_addr],mail_mul.as_string())

  srv.quit()

​

except Exception as a:

  print(a)

python如何发送带有附件、正文为HTML的邮件

三、源码

D55_2_HTMLMailSend.py

D55_3_SendAttachmentMail.py

https://github.com/ruigege66/Python_learning/blob/master/D55_2_HTMLMailSend.py

https://github.com/ruigege66/Python_learning/blob/master/D55_3_SendAttachmentMail.py

以上就是python如何发送带有附件、正文为HTML的邮件的详细内容,更多关于python 发送邮件的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python3+PyQt5实现柱状图
Apr 24 Python
Python生成器定义与简单用法实例分析
Apr 30 Python
python使用turtle库绘制树
Jun 25 Python
Flask框架信号用法实例分析
Jul 24 Python
Python Matplotlib实现三维数据的散点图绘制
Mar 19 Python
深入了解Django中间件及其方法
Jul 26 Python
解决python中的幂函数、指数函数问题
Nov 25 Python
Python反爬虫伪装浏览器进行爬虫
Feb 28 Python
iPython pylab模式启动方式
Apr 24 Python
关于tensorflow softmax函数用法解析
Jun 30 Python
python 爬虫之selenium可视化爬虫的实现
Dec 04 Python
5 分钟读懂Python 中的 Hook 钩子函数
Dec 09 Python
pytorch __init__、forward与__call__的用法小结
Feb 27 #Python
python 实现有道翻译功能
Feb 26 #Python
Python爬取酷狗MP3音频的步骤
Feb 26 #Python
python利用xpath爬取网上数据并存储到django模型中
Feb 26 #Python
用python 绘制茎叶图和复合饼图
Feb 26 #Python
python lambda的使用详解
Feb 26 #Python
python爬虫scrapy框架之增量式爬虫的示例代码
Feb 26 #Python
You might like
PHPCMS的使用小结
2010/09/20 PHP
codeigniter教程之多文件上传使用示例
2014/02/11 PHP
PHP批量生成静态HTML的简单原理和方法
2014/04/20 PHP
Laravel中注册Facades的步骤详解
2016/03/16 PHP
BOOM vs RR BO3 第二场2.13
2021/03/10 DOTA
利用json获取字符出现次数的代码
2012/03/22 Javascript
javascript动态加载实现方法一
2012/08/22 Javascript
jQuery使用removeClass方法删除元素指定Class的方法
2015/03/26 Javascript
JavaScript中的Array 对象(数组对象)
2016/06/02 Javascript
全面解析JavaScript里的循环方法之forEach,for-in,for-of
2020/04/20 Javascript
js传值后台中文出现乱码的解决方法
2016/06/30 Javascript
JavaScript随机打乱数组顺序之随机洗牌算法
2016/08/02 Javascript
微信小程序scroll-view实现横向滚动和上拉加载示例
2017/03/06 Javascript
jQuery插件zTree实现更新根节点中第i个节点名称的方法示例
2017/03/08 Javascript
vue中各组件之间传递数据的方法示例
2017/07/27 Javascript
jquery根据name取得select选中的值实例(超简单)
2018/01/25 jQuery
如何提升vue.js中大型数据的性能
2019/06/21 Javascript
vue从一个页面跳转到另一个页面并携带参数的解决方法
2019/08/12 Javascript
JavaScript数组排序小程序实现解析
2020/01/13 Javascript
jQuery单页面文字搜索插件jquery.fullsearch.js的使用方法
2020/02/04 jQuery
Vue插件之滑动验证码用法详解
2020/04/05 Javascript
js实现限定范围拖拽的示例
2020/10/26 Javascript
开始着手第一个Django项目
2015/07/15 Python
Python3实现腾讯云OCR识别
2018/11/27 Python
python 爬取学信网登录页面的例子
2019/08/13 Python
python 内置函数汇总详解
2019/09/16 Python
python3常用的数据清洗方法(小结)
2019/10/31 Python
Keras框架中的epoch、bacth、batch size、iteration使用介绍
2020/06/10 Python
解决canvas转base64/jpeg时透明区域变成黑色背景的方法
2016/10/23 HTML / CSS
轻化专业学生实习自我鉴定
2013/09/20 职场文书
参观监狱心得体会
2014/01/02 职场文书
同事打架检讨书
2014/02/04 职场文书
商超业务员岗位职责
2015/02/13 职场文书
基层党支部承诺书
2015/04/30 职场文书
《天使的翅膀》读后感3篇
2019/12/20 职场文书
Python实战之OpenCV实现猫脸检测
2021/06/26 Python