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函数参数*args**kwargs用法实例
Dec 04 Python
Python中字符串格式化str.format的详细介绍
Feb 17 Python
对Python中range()函数和list的比较
Apr 19 Python
python实现周期方波信号频谱图
Jul 21 Python
解决pyqt5中QToolButton无法使用的问题
Jun 21 Python
python可视化篇之流式数据监控的实现
Aug 07 Python
Python多线程爬取豆瓣影评API接口
Oct 22 Python
通过字符串导入 Python 模块的方法详解
Oct 27 Python
Python字典深浅拷贝与循环方式方法详解
Feb 09 Python
Python环境管理virtualenv&amp;virtualenvwrapper的配置详解
Jul 01 Python
matplotlib 范围选区(SpanSelector)的使用
Feb 24 Python
使用Python快速打开一个百万行级别的超大Excel文件的方法
Mar 02 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安全配置
2006/10/09 PHP
php全排列递归算法代码
2012/10/09 PHP
8个必备的PHP功能实例代码
2013/10/27 PHP
php实现的Timer页面运行时间监测类
2014/09/24 PHP
深入剖析浏览器退出之后php还会继续执行么
2016/05/17 PHP
Laravel5中Cookie的使用详解
2017/05/03 PHP
javascript 模拟JQuery的Ready方法实现并出现的问题
2009/12/06 Javascript
javascript 手动给表增加数据的小例子
2013/07/10 Javascript
node.js中的Socket.IO使用实例
2014/11/04 Javascript
JS实现带关闭功能的阿里妈妈网站顶部滑出banner工具条代码
2015/09/17 Javascript
JS中位置与大小的获取方法
2016/11/22 Javascript
Angular 2父子组件数据传递之@Input和@Output详解 (上)
2017/07/05 Javascript
vue.js 实现点击按钮动态添加li的方法
2018/09/07 Javascript
[27:53]2014 DOTA2华西杯精英邀请赛 5 24 NewBee VS iG
2014/05/26 DOTA
[40:03]Liquid vs Optic 2018国际邀请赛淘汰赛BO3 第一场 8.21
2018/08/22 DOTA
Python使用Redis实现作业调度系统(超简单)
2016/03/22 Python
Python Paramiko模块的安装与使用详解
2016/11/18 Python
python 从csv读数据到mysql的实例
2018/06/21 Python
python解析json串与正则匹配对比方法
2018/12/20 Python
selenium+python环境配置教程详解
2019/05/28 Python
Python定时任务随机时间执行的实现方法
2019/08/14 Python
Pandas将列表(List)转换为数据框(Dataframe)
2020/04/24 Python
Python爬虫实现自动登录、签到功能的代码
2020/08/20 Python
HTML5中使用postMessage实现两个网页间传递数据
2016/06/22 HTML / CSS
Ryderwear美国官网:澳大利亚高端健身训练装备品牌
2018/04/24 全球购物
印尼综合在线预订网站:Tiket.com(机票、酒店、火车、租车和娱乐)
2018/10/11 全球购物
如何实现jdbc性能优化
2012/07/30 面试题
创业计划实施的7大步骤
2014/02/05 职场文书
销售经理竞聘书
2014/03/31 职场文书
入党积极分子个人总结
2015/03/02 职场文书
停电调休通知
2015/04/16 职场文书
我爱我班主题班会
2015/08/13 职场文书
基于go interface{}==nil 的几种坑及原理分析
2021/04/24 Golang
JavaScript数组 几个常用方法总结
2021/11/11 Javascript
python基础之//、/与%的区别详解
2022/06/10 Python
Windows Server 修改远程桌面端口的实现
2022/06/25 Servers