如何用Python实现邮件发送功能?python邮件发送代码



“””
msg.attach(MIMEText(html_content, ‘html’, ‘utf-8’))

— 添加附件 —

attachment_path = “report.pdf” # 替换为你的文件路径
if os.path.exists(attachment_path):
with open(attachment_path, “rb”) as attachment:
part = MIMEBase(‘application’, ‘octet-stream’)
part.set_payload(attachment.read())

Python 实操 发送带附件邮件Python自动发送邮件
加载中
Python 实操 发送带附件邮件Python自动发送邮件
# 编码附件
encoders.encode_base64(part)
# 添加头信息
part.add_header(
    'Content-Disposition',
    f'attachment; filename= {os.path.basename(attachment_path)}'
)
msg.attach(part)

else:
print(f”警告:文件 {attachment_path} 不存在,跳过附件。”)

try:
with smtplib.SMTP_SSL(smtp_server, smtp_port) as server:
server.login(sender_email, password)
server.sendmail(sender_email, receiver_email, msg.as_string())
print(“带附件的邮件发送成功!”)
except Exception as e:
print(f”邮件发送失败: {e}”)

如何用Python实现邮件发送功能?python邮件发送代码


---
### 3. 使用第三方库:`yagmail`(更简洁)
如果你希望代码更简洁,可以使用第三方库 `yagmail`,它封装了 `smtplib`,使用更直观。
安装:
```bash
pip install yagmail

使用示例:

import yagmail
# 连接邮箱(首次使用可能需要输入验证码或配置缓存)
yag = yagmail.SMTP(user="your_email@example.com", password="your_password_or_app_password", host="smtp.example.com")
# 发送纯文本
yag.send("recipient@example.com", "主题", "正文内容")
# 发送 HTML
yag.send("recipient@example.com", "HTML 主题", "<h1>你好</h1>")
# 发送附件
yag.send("recipient@example.com", "带附件", "正文", ["file1.pdf", "file2.jpg"])

如何用Python实现邮件发送功能?python邮件发送代码


常见邮箱 SMTP 配置参考

如何用Python实现邮件发送功能?python邮件发送代码

邮箱服务商 SMTP 服务器 端口 (SSL) 端口 (非SSL)
QQ 邮箱 smtp.qq.com 465 25
163 邮箱 smtp.163.com 465 25
Gmail smtp.gmail.com 465 587
Outlook smtp-mail.outlook.com 587 25

安全建议

  1. 不要硬编码密码:在生产环境中,请将邮箱密码或授权码存储在环境变量或配置文件中,而不是直接写在代码里。
    import os
    password = os.getenv('EMAIL_PASSWORD')
  2. 使用授权码:大多数邮箱要求开启 SMTP 服务后生成专用授权码,不要使用登录密码。
  3. 异常处理:始终使用 try-except 捕获网络错误或认证错误。

如果你有特定的邮箱服务商或需求(如群发、定时发送等),可以告诉我,我可以提供更具体的代码。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/article/478676.html

(0)
Nginx proxy_redirect怎么用?nginx反向代理配置教程
上一篇 2026年7月10日 06:48
免费cdn防御,免费cdn防御怎么用
下一篇 2026年7月10日 06:50

相关推荐

  • 个人电脑能搭建Web服务器吗?个人电脑搭建Web服务器教程

    个人电脑搭建Web服务器完全可行,适合开发者调试、家庭NAS存储或小型项目托管,但需解决公网IP、动态域名解析及安全防护三大核心问题,切勿直接用于高流量商业场景,将闲置的PC或新组装的台式机转变为Web服务器,是技术爱好者降低试错成本的最佳途径,相比租用云服务器,本地服务器拥有数据的绝对控制权,且在内网环境下访……

    服务器运维 2026年5月27日
    5100
  • 服务器CPU报价多少钱,哪个型号性价比高?

    服务器CPU报价并非固定数字,它随型号、核心数、频率和缓存动态变化,2026年英特尔至强和AMD EPYC仍是主流选择,选购重点在于匹配实际业务负载与预算,服务器CPU报价对比:英特尔至强与AMD EPYC在2026年,服务器CPU市场主要由英特尔至强和AMD EPYC两大系列主导,两者在架构、核心数、内存支持……

    2026年7月22日
    1200
  • x86服务器系统硬件构成包括哪些?,主要部件有哪些?

    x86服务器系统的硬件构成主要包括CPU、主板、内存、硬盘、网络接口、电源和散热系统等核心部件,其中CPU和主板架构决定了服务器性能与扩展能力,x86服务器硬件构成有哪些核心组件处理器与内存子系统处理器是x86服务器的算力核心,目前主流有Intel Xeon和AMD EPYC两大系列,都采用多核架构,支持超线程……

    2026年7月24日
    1400
  • 派生python是什么意思?派生类继承父类怎么实现

    派生Python并非官方标准术语,通常指代通过C/C++扩展、Cython编译或PyPy JIT技术生成的优化版Python执行环境,其核心优势在于突破解释器性能瓶颈,实现接近C语言的运行速度,在2026年的软件开发语境中,Python依然是数据科学、人工智能以及自动化运维的首选语言,随着模型参数量级的指数级增……

    2026年7月6日
    14400
  • 云服务器ECS实例类型包括哪些,怎么选?

    云服务器ECS实例类型主要包括通用型、计算型、内存型、存储型、GPU型以及大数据型等,每种类型基于不同的CPU与内存配比,覆盖从轻量Web应用到高性能计算的全场景需求,无论你是刚起步的创业者还是负责大型系统的运维,搞懂这些实例类型的区别,才能避免花冤枉钱,通用型实例:均衡之选,适用多数场景通用型实例是云服务器里……

    2026年8月23日
    000
  • 防火墙SSL检测如何确保安全?为何SSL证书在防火墙检测中如此关键?

    防火墙SSL检测为什么需要证书防火墙进行SSL/TLS流量检测(也称为SSL解密或SSL中间人检测)必须安装自己的根证书颁发机构(CA)证书,核心原因在于:HTTPS协议本身设计为端到端加密,防火墙作为“中间人”需要合法地介入加密通道才能检查流量内容,而只有持有受客户端信任的根CA签发的证书,防火墙才能在不触发……

    2026年2月5日
    15920
  • Python GzipFile怎么用?python gzipfile读取压缩文件报错怎么解决

    Python的gzipfile模块主要用于高效处理gzip格式的压缩文件,它通过流式读写实现低内存占用,是处理大型日志或数据集的首选方案,在日常的数据处理和文件管理工作中,我们经常会遇到体积庞大的文件,直接解压这些文件不仅耗时,还可能瞬间耗尽服务器内存,这时候,Python内置的gzip模块及其相关的文件操作类……

    2026年7月12日
    13200
  • 分布式事务处理如何保证一致性?,怎么解决

    分布式事务处理的核心在于通过两阶段提交、TCC、Saga等模式保证跨服务数据一致性,但最终一致性才是大多数业务场景的最佳选择,分布式事务处理方案对比:XA、TCC与Saga在分布式系统中,事务处理方案的选择直接影响数据一致性,常见方案包括基于XA协议的两阶段提交、TCC补偿模式以及Saga长事务模式,我们逐一分……

    2026年8月5日
    1000
  • 服务器托管使用内容分发网络到底有什么好处,怎么选择

    对于已经部署了托管服务器的业务,接入CDN并非多此一举,而是实现加速、安全与成本控制的关键一步,CDN让托管服务器不再孤军奋战,尤其在应对突发流量和跨区域访问时,能使网站响应速度提升一个数量级,同时大幅降低源站被攻击的风险,为什么托管服务器需要CDN这个“外援”很多站长认为托管服务器独享硬件资源,带宽充足,没必……

    2026年7月20日
    500
  • 什么是服务器机房top图?优缺点全面解析

    服务器机房拓扑图(TOP图)的核心价值在于它作为数据中心物理与逻辑架构的“可视化蓝图”,是高效运维、保障业务连续性的基石,它清晰呈现了设备连接关系、网络路径、电力供给链等关键信息,为规划、管理、排障及优化提供了不可或缺的支撑,服务器机房TOP图的显著优势全局可视化管理:一目了然: 提供机房物理布局(机柜位置、设……

    服务器运维 2026年2月14日
    14960

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注