Python 技术篇-用smtplib和email库实现邮件发送各种类型的附件实例演示

简介: Python 技术篇-用smtplib和email库实现邮件发送各种类型的附件实例演示

     

qq 账号发送邮箱登陆密码需要用授权码。

可以看我的这个文章:

Python 技术篇-qq邮箱授权码开通

实现原理

我们用图片和文档两种类型的附件举个例子。

MIMEBase(",")

这个里只要有两个字符串参数就好了。可以随便填。

m_img.add_header('Content-Disposition', 'attachment', filename = "...")

filename 对应的名字填上就好了,展示就是靠这个名字来识别的,是展示为图片样式或是word文档样式。

#!/user/bin/env python
# -*- coding:utf-8 -*-
import smtplib
from email import encoders
from email.mime.base import MIMEBase
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.header import Header
message = MIMEMultipart()   # 邮件主体
# 邮件加入图片
m_img = MIMEBase('', '')
m_img.add_header('Content-Disposition', 'attachment', filename = "hello.jpg")
f = open("hello.jpg", "rb")   # 读取本地图片
m_img.set_payload(f.read())
encoders.encode_base64(m_img)
message.attach(m_img)
# 邮件加入文档
m_file = MIMEBase('', '')
m_file.add_header('Content-Disposition', 'attachment', filename = "hello.doc")
f = open("hello.doc", "rb")   # 读取本地文档
m_file.set_payload(f.read())
encoders.encode_base64(m_file)
message.attach(m_file)
message['From'] = Header('小爱')   # 邮件发送者名字
message['To'] = Header('小蓝枣')   # 邮件接收者名字
message['Subject'] = Header('来自异世界的一封信!')   # 邮件主题
mail = smtplib.SMTP()
mail.connect("smtp.qq.com")   # 连接 qq 邮箱
mail.login("11507411@qq.com", "授权码")   # 账号和授权码
mail.sendmail("11507411@qq.com", ["24185465@qq.com"], message.as_string())   # 发送账号、接收账号和邮件信息

运行效果图:

image.png

喜欢的点个赞❤吧!

目录
相关文章
|
1天前
|
XML JSON 数据库
Python的标准库
Python的标准库
108 77
|
16天前
|
机器学习/深度学习 算法 数据挖掘
数据分析的 10 个最佳 Python 库
数据分析的 10 个最佳 Python 库
51 4
数据分析的 10 个最佳 Python 库
|
2天前
|
XML JSON 数据库
Python的标准库
Python的标准库
25 11
|
15天前
|
人工智能 API 开发工具
aisuite:吴恩达发布开源Python库,一个接口调用多个大模型
吴恩达发布的开源Python库aisuite,提供了一个统一的接口来调用多个大型语言模型(LLM)服务。支持包括OpenAI、Anthropic、Azure等在内的11个模型平台,简化了多模型管理和测试的工作,促进了人工智能技术的应用和发展。
68 1
aisuite:吴恩达发布开源Python库,一个接口调用多个大模型
|
2天前
|
数据可视化 Python
以下是一些常用的图表类型及其Python代码示例,使用Matplotlib和Seaborn库。
通过这些思维导图和分析说明表,您可以更直观地理解和选择适合的数据可视化图表类型,帮助更有效地展示和分析数据。
29 8
|
10天前
|
安全 API 文件存储
Yagmail邮件发送库:如何用Python实现自动化邮件营销?
本文详细介绍了如何使用Yagmail库实现自动化邮件营销。Yagmail是一个简洁强大的Python库,能简化邮件发送流程,支持文本、HTML邮件及附件发送,适用于数字营销场景。文章涵盖了Yagmail的基本使用、高级功能、案例分析及最佳实践,帮助读者轻松上手。
21 4
|
15天前
|
数据采集 API 定位技术
Python技术进阶:动态代理IP的跨境电商解决方案
Python技术进阶:动态代理IP的跨境电商解决方案
|
8天前
|
人工智能 数据可视化 数据挖掘
探索Python编程:从基础到高级
在这篇文章中,我们将一起深入探索Python编程的世界。无论你是初学者还是有经验的程序员,都可以从中获得新的知识和技能。我们将从Python的基础语法开始,然后逐步过渡到更复杂的主题,如面向对象编程、异常处理和模块使用。最后,我们将通过一些实际的代码示例,来展示如何应用这些知识解决实际问题。让我们一起开启Python编程的旅程吧!
|
7天前
|
存储 数据采集 人工智能
Python编程入门:从零基础到实战应用
本文是一篇面向初学者的Python编程教程,旨在帮助读者从零开始学习Python编程语言。文章首先介绍了Python的基本概念和特点,然后通过一个简单的例子展示了如何编写Python代码。接下来,文章详细介绍了Python的数据类型、变量、运算符、控制结构、函数等基本语法知识。最后,文章通过一个实战项目——制作一个简单的计算器程序,帮助读者巩固所学知识并提高编程技能。