使用 Python 实现批量发送电子邮件

news/2025/3/30 12:29:34/

引言:在日常工作中,我们可能会遇到需要批量发送邮件的场景,例如通知、营销邮件或测试邮件。如果手动发送,不仅效率低下,还容易出错。今天,我将分享一个使用 Python 实现的自动化邮件发送脚本,通过读取 Excel 文件中的发件人和收件人信息,轻松完成批量邮件发送任务。

功能概述

这个脚本的主要功能包括:

  1. 从 Excel 文件中读取发件人信息(邮箱和授权码)和收件人信息(邮箱)。
  2. 根据发件人邮箱的域名,自动匹配 SMTP 服务器和端口。
  3. 使用 Python 的 smtplib 库发送邮件,支持主流邮箱(如 QQ 邮箱、163 邮箱、126 邮箱)。
  4. 提供简单的错误处理,确保发送失败时能及时反馈问题。

以下是完整的代码实现和详细说明。

代码实现

python">import pandas as pd
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart# 读取 Excel 文件
senders_df = pd.read_excel('邮箱.xlsx')  # 发件人表格
receivers_df = pd.read_excel('receive.xlsx')  # 收件人表格# 定义发送邮件的函数
def send_email(smtp_server, port, username, password, to_email, subject, body):msg = MIMEMultipart()msg['From'

http://www.ppmy.cn/news/1580901.html

相关文章

GitHub 超火的开源终端工具——Warp

Warp 作为近年来 GitHub 上备受瞩目的开源终端工具,以其智能化、高性能和协作能力重新定义了命令行操作体验。以下从多个维度深入解析其核心特性、技术架构、用户评价及生态影响力: 一、背景与核心团队 Warp 由前 GitHub CTO Jason Warner 和 Google 前…

NFS共享搭建

准备工作 首先确保已经建了两台虚拟机,都是桥接模式,一台是windows server 2019 一台是centos7 用户配额教程,是在windows server 2019中,先新建虚拟池,然后创建虚拟磁盘,记得添加磁盘类型要选择第三个,要不…

基于YOLOv8深度学习的智能小麦害虫检测识别系统

作者简介:Java领域优质创作者、CSDN博客专家 、CSDN内容合伙人、掘金特邀作者、阿里云博客专家、51CTO特邀作者、多年架构师设计经验、多年校企合作经验,被多个学校常年聘为校外企业导师,指导学生毕业设计并参与学生毕业答辩指导,…

MCP技术将重塑 SaaS 与 AI 的协作范式

引言 回顾信息技术的发展史,从最早的集中式计算机到互联网的普及,再到云计算和移动互联网的崛起,每一次技术革命都在重塑企业的运营模式。近年来,SaaS(软件即服务)和AI(人工智能)成…

Rust语言介绍和猜数字游戏的实现

文章目录 Rust语言介绍和猜数字游戏的实现cargo是什么使用Rust编写猜数字 Rust语言介绍和猜数字游戏的实现 Rust语言是一种系统编程语言,核心强调安全性、并发性以及高性能,由类似于C/C的底层控制能力,性能也非常接近,Rust有一些…

深度学习框架PyTorch——从入门到精通(2)张量

又名:张亮的一生~~ 张量(Tensors)初始化张量张量的属性张量上的操作与NumPy桥接 张量(Tensors) 张量是一种专门的数据结构,类似Python中的数组或者矩阵。在Torch中,我们使用张量来编码模型的输…

JavaScript 中的模块化开发:从 CommonJS 到 ES6 Modules

1. 引言 1.1 模块化开发的重要性 随着前端项目的复杂度不断增加,模块化开发成为了提高代码可维护性、可复用性和可扩展性的关键。通过模块化开发,开发者可以将代码拆分为独立的模块,每个模块负责特定的功能,从而降低代码的耦合度…

鸿蒙开发真机调试:无线调试和USB调试

前言 在鸿蒙开发的旅程中,真机调试堪称至关重要的环节,其意义不容小觑。虽说模拟器能够为我们提供初步的测试环境,方便我们在开发过程中快速预览应用的基本效果,但它与真机环境相比,仍存在诸多差异。就好比在模拟器中…