Python-SMTP发送邮件(HTML、图片、附件)

简介: 前言:SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。一、Python发送HTML邮件# -*- coding: utf-8 -*-# @Time : 2018/6/6 ...

前言:

SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。


一、Python发送HTML邮件

# -*- coding: utf-8 -*-
# @Time    : 2018/6/6 上午11:27
# @Author  : Wang
# @File    : test_mail_html.py

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

def sendMail():
    # 定义相关数据,请更换自己的真实数据
    smtpserver = 'smtp.163.com'
    sender = 'test1@163.com'
    #receiver可设置多个,使用“,”分隔
    receiver = 'wang@mobile.cn,zhang@mobile.cn,lily@mobile.cn'
    username = 'test1@163.com'
    password = '2018'

    msg = MIMEMultipart()
    boby = """
    <h3>Hi,all</h3>
    <p>附件为本次FM_自动化测试报告。</p>
    <p>请解压zip,并使用Firefox打开index.html查看本次自动化测试报告结果。</p>
    """
    mail_body = MIMEText(boby, _subtype='html', _charset='utf-8')
    msg['Subject'] = Header("Android_自动化测试报告", 'utf-8')
    msg['From'] = sender
    receivers = receiver
    toclause = receivers.split(',')
    msg['To'] = ",".join(toclause)
    print(msg['To'])
    msg.attach(mail_body)
    # 登陆并发送邮件
    try:
        smtp = smtplib.SMTP()
        ##打开调试模式
        # smtp.set_debuglevel(1)
        smtp.connect(smtpserver)
        smtp.login(username, password)
        smtp.sendmail(sender, toclause, msg.as_string())
    except:
        print("邮件发送失败!!")
    else:
        print("邮件发送成功")
    finally:
        smtp.quit()

二、Python发送邮件带附件

#添加report附件
att = MIMEText(open("/report/html.zip", "rb").read(), "base64", "utf-8")
att["Content-Type"] = "application/octet-stream"
times = time.strftime("%m_%d_%H_%M", time.localtime(time.time()))
filename_report = 'FM_Android_Report'+'_'+times+'.zip'
att["Content-Disposition"] = 'attachment; filename= %s ' %filename_report
msg.attach(att)

三、Python发送邮件正文带图片

msg = MIMEMultipart()

boby = """
    <h3>Hi,all</h3>
    <p>附件为本次FM_自动化测试报告。</p>
    <p>请解压zip,并使用Firefox打开index.html查看本次自动化测试报告结果。</p>
    <p>
    <br><img src="cid:image1"></br> 
    </p>
    <p>
"""
  
msg.attach(mail_body)
fp = open("/image/1.png", 'rb')
images = MIMEImage(fp.read())
fp.close()
images.add_header('Content-ID', '<image1>')
msg.attach(images)

以上~~对你有帮助的话,点赞吧~

作者:搁浅
出处: http://www.cnblogs.com/xiaoxi-3-/
如果对您有帮助,请关注我的同名简书:https://www.jianshu.com/u/da1677475c27
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

目录
相关文章
|
22天前
|
机器学习/深度学习 编解码 Python
Python图片上采样工具 - RealESRGANer
Real-ESRGAN基于深度学习实现图像超分辨率放大,有效改善传统PIL缩放的模糊问题。支持多种模型版本,推荐使用魔搭社区提供的预训练模型,适用于将小图高质量放大至大图,放大倍率越低效果越佳。
131 3
|
24天前
|
机器学习/深度学习 文字识别 Java
Python实现PDF图片OCR识别:从原理到实战的全流程解析
本文详解2025年Python实现扫描PDF文本提取的四大OCR方案(Tesseract、EasyOCR、PaddleOCR、OCRmyPDF),涵盖环境配置、图像预处理、核心识别与性能优化,结合财务票据、古籍数字化等实战场景,助力高效构建自动化文档处理系统。
277 0
|
5月前
|
数据采集 Web App开发 JavaScript
基于Selenium的Python爬虫抓取动态App图片
基于Selenium的Python爬虫抓取动态App图片
356 68
|
3月前
|
数据采集 存储 监控
Python爬虫实战:批量下载亚马逊商品图片
Python爬虫实战:批量下载亚马逊商品图片
|
5月前
|
存储 机器学习/深度学习 人工智能
多模态RAG实战指南:完整Python代码实现AI同时理解图片、表格和文本
本文探讨了多模态RAG系统的最优实现方案,通过模态特定处理与后期融合技术,在性能、准确性和复杂度间达成平衡。系统包含文档分割、内容提取、HTML转换、语义分块及向量化存储五大模块,有效保留结构和关系信息。相比传统方法,该方案显著提升了复杂查询的检索精度(+23%),并支持灵活升级。文章还介绍了查询处理机制与优势对比,为构建高效多模态RAG系统提供了实践指导。
1382 0
多模态RAG实战指南:完整Python代码实现AI同时理解图片、表格和文本
|
12月前
|
Python
Python实用记录(六):如何打开txt文档并删除指定绝对路径下图片
这篇文章介绍了如何使用Python打开txt文档,删除文档中指定路径的图片,并提供了一段示例代码来展示这一过程。
147 1
|
12月前
|
Python
python使用smtp发送邮件
python使用smtp发送邮件
172 0
|
Python
Python 技术篇-邮件写入html代码,邮件发送表格,邮件发送超链接,邮件发送网络图片
Python 技术篇-邮件写入html代码,邮件发送表格,邮件发送超链接,邮件发送网络图片
550 0
Python 技术篇-邮件写入html代码,邮件发送表格,邮件发送超链接,邮件发送网络图片
|
24天前
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的首选语言
Python:现代编程的首选语言
191 102
|
24天前
|
数据采集 机器学习/深度学习 算法框架/工具
Python:现代编程的瑞士军刀
Python:现代编程的瑞士军刀
197 104

推荐镜像

更多