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 相关文章推荐
Python向日志输出中添加上下文信息
May 24 Python
解决Scrapy安装错误:Microsoft Visual C++ 14.0 is required...
Oct 01 Python
python实现画圆功能
Jan 25 Python
Python中对数组集进行按行打乱shuffle的方法
Nov 08 Python
使用python itchat包爬取微信好友头像形成矩形头像集的方法
Feb 21 Python
python字符串分割及字符串的一些常规方法
Jul 24 Python
python使用socket 先读取长度,在读取报文内容示例
Sep 26 Python
matplotlib.pyplot画图并导出保存的实例
Dec 07 Python
对tensorflow中tf.nn.conv1d和layers.conv1d的区别详解
Feb 11 Python
借助Paramiko通过Python实现linux远程登陆及sftp的操作
Mar 16 Python
python正则表达式re.match()匹配多个字符方法的实现
Jan 27 Python
浅谈Python数学建模之线性规划
Jun 23 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
php实现mysql封装类示例
2014/05/07 PHP
PHP与Ajax相结合实现登录验证小Demo
2016/03/16 PHP
php版微信数据统计接口用法示例
2016/10/12 PHP
PHP使用标准库spl实现的观察者模式示例
2018/08/04 PHP
Prototype 学习 工具函数学习($w,$F方法)
2009/07/12 Javascript
jQuery 学习入门篇附实例代码
2010/03/16 Javascript
JavaScript日历实现代码
2010/09/12 Javascript
js和as的稳定传值问题解决
2013/07/14 Javascript
正负小数点后两位浮点数实现原理及代码
2013/09/06 Javascript
JavaScript中使用arguments获得函数传参个数实例
2014/08/27 Javascript
js实现YouKu的漂亮搜索框效果
2015/08/19 Javascript
js类式继承与原型式继承详解
2016/04/07 Javascript
jQuery调用WebMethod(PageMethod) NET2.0的方法
2016/04/15 Javascript
深入理解逻辑表达式的用法 与或非的用法
2016/06/06 Javascript
JavaScript函数表达式详解及实例
2017/05/05 Javascript
Angularjs 与 bower安装和使用详解
2017/05/11 Javascript
JS实现微信摇一摇原理解析
2017/07/22 Javascript
捕获未处理的Promise错误方法
2017/10/13 Javascript
vue.js element-ui validate中代码不执行问题解决方法
2017/12/18 Javascript
vue与vue-i18n结合实现后台数据的多语言切换方法
2018/03/08 Javascript
vue离开当前页面触发的函数代码
2020/09/01 Javascript
[55:03]LGD vs EG 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
解决PyCharm中光标变粗的问题
2017/08/05 Python
Python初学者需要注意的事项小结(python2与python3)
2018/09/26 Python
python使用sklearn实现决策树的方法示例
2019/09/12 Python
Python对wav文件的重采样实例
2020/02/25 Python
PyCharm+Pipenv虚拟环境开发和依赖管理的教程详解
2020/04/16 Python
详解python算法常用技巧与内置库
2020/10/17 Python
Marlies Dekkers内衣美国官方网上商店:高端内衣品牌
2018/11/12 全球购物
如何利用find命令查找文件
2016/11/18 面试题
应届毕业生应聘自荐信
2013/12/07 职场文书
户外拓展活动方案
2014/02/11 职场文书
质量承诺书怎么写
2014/05/24 职场文书
社会学专业求职信
2014/07/17 职场文书
2014年林业工作总结
2014/12/05 职场文书
召开会议通知范文
2015/04/15 职场文书