Python分享-email.message如何构建你的邮件消息

简介: Python分享-email.message如何构建你的邮件消息

我最近在做发送邮件相关的一些任务,由于一些原因呢,不打算仅仅为了一个邮件功能就去申请第三方包的使用权限,所以还是决定使用python自带的snmplib来做啊,也很好用。但是第三方包有些做了进一步的封装和更加人性化的优化啊。减少了我们去配置一些麻烦的内容。

email.message.EmailMessage()

EmailMessage()这个类就是email提供的主要内容了,通过它我们可以设置邮件消息的头部,主体内容,还能添加附件。

我们的邮件由header和payload组成,header可以理解为,平时我们收到邮件上方的发件人,收件人,主题,抄送这部分,然后payload就是我们的邮件主体,包括文字性的邮件内容,以及附件。

EmailMessage()这个类是一个dict like的类,也就是说我们可以通过一些类字典的接口来操作,但是注意的是,与一般的字典不同,字典是无序的,EmailMessage()的键是有序的,可以看下面的那个例子,我们设置消息头的时候,是按照顺序来的,键还可以重复,python提供了额外的方法来处理包含重复键的header。

直观的用例

代码用例,下方的代码包含了消息主体的构建,以及通过email.message.EmailMessage()这个类,我们还可以添加附件,非常的方便。依稀记得以前要用一个MIME的包,真的很难用。

message = email.message.EmailMessage()
# 邮件头部
message["From"] = "***@gmail.com"
message["To"] = ["****@gmail.com", ]
message["cc"] = ["****@gmail.com",]
message["Bcc"] = ["****@yahoo.in", ]
# 主题
message["Subject"] =  "Mail with attachments"
# 消息主体
body = '''
Hello All,
Please find the attached file.
Regards,
Alex
'''
message.set_content(body)
# 比如我们附加一个excel文件
with open("report.xlsx", mode="rb") as fp:
    excel_content = fp.read()
    message.add_attachment(excel_content, maintype="application", subtype="excel", filename="do


相关文章
|
2月前
|
人工智能 JavaScript API
零基础构建MCP服务器:TypeScript/Python双语言实战指南
作为一名深耕技术领域多年的博主摘星,我深刻感受到了MCP(Model Context Protocol)协议在AI生态系统中的革命性意义。MCP作为Anthropic推出的开放标准,正在重新定义AI应用与外部系统的交互方式,它不仅解决了传统API集成的复杂性问题,更为开发者提供了一个统一、安全、高效的连接框架。在过去几个月的实践中,我发现许多开发者对MCP的概念理解透彻,但在实际动手构建MCP服务器时却遇到了各种技术壁垒。从环境配置的细节问题到SDK API的深度理解,从第一个Hello World程序的调试到生产环境的部署优化,每一个环节都可能成为初学者的绊脚石。因此,我决定撰写这篇全面的实
498 67
零基础构建MCP服务器:TypeScript/Python双语言实战指南
|
2月前
|
机器学习/深度学习 算法 量子技术
GQNN框架:让Python开发者轻松构建量子神经网络
为降低量子神经网络的研发门槛并提升其实用性,本文介绍一个名为GQNN(Generalized Quantum Neural Network)的Python开发框架。
55 4
GQNN框架:让Python开发者轻松构建量子神经网络
|
30天前
|
人工智能 自然语言处理 安全
Python构建MCP服务器:从工具封装到AI集成的全流程实践
MCP协议为AI提供标准化工具调用接口,助力模型高效操作现实世界。
331 1
|
3月前
|
数据采集 数据可视化 JavaScript
用Python采集CBC新闻:如何借助海外代理IP构建稳定采集方案
本文介绍了如何利用Python技术栈结合海外代理IP采集加拿大CBC新闻数据。内容涵盖使用海外代理IP的必要性、青果代理IP的优势、实战爬取流程、数据清洗与可视化分析方法,以及高效构建大规模新闻采集方案的建议。适用于需要获取国际政治经济动态信息的商业决策、市场预测及学术研究场景。
|
2月前
|
安全 数据库 数据安全/隐私保护
Python办公自动化实战:手把手教你打造智能邮件发送工具
本文介绍如何使用Python的smtplib和email库构建智能邮件系统,支持图文混排、多附件及多收件人邮件自动发送。通过实战案例与代码详解,帮助读者快速实现办公场景中的邮件自动化需求。
235 0
|
3月前
|
数据采集 Web App开发 自然语言处理
利用Python构建今日头条搜索结果的可视化图表
利用Python构建今日头条搜索结果的可视化图表
|
6月前
|
机器学习/深度学习 设计模式 API
Python 高级编程与实战:构建 RESTful API
本文深入探讨了使用 Python 构建 RESTful API 的方法,涵盖 Flask、Django REST Framework 和 FastAPI 三个主流框架。通过实战项目示例,详细讲解了如何处理 GET、POST 请求,并返回相应数据。学习这些技术将帮助你掌握构建高效、可靠的 Web API。
|
6月前
|
机器学习/深度学习 设计模式 测试技术
Python 高级编程与实战:构建自动化测试框架
本文深入探讨了Python中的自动化测试框架,包括unittest、pytest和nose2,并通过实战项目帮助读者掌握这些技术。文中详细介绍了各框架的基本用法和示例代码,助力开发者快速验证代码正确性,减少手动测试工作量。学习资源推荐包括Python官方文档及Real Python等网站。
|
6月前
|
机器学习/深度学习 设计模式 API
Python 高级编程与实战:构建微服务架构
本文深入探讨了 Python 中的微服务架构,介绍了 Flask、FastAPI 和 Nameko 三个常用框架,并通过实战项目帮助读者掌握这些技术。每个框架都提供了构建微服务的示例代码,包括简单的 API 接口实现。通过学习本文,读者将能够使用 Python 构建高效、独立的微服务。

热门文章

最新文章

推荐镜像

更多