Python发送邮件脚本
创始人
2024-12-03 08:03:42
0
Python发送邮件脚本是一种使用Python编程语言编写的程序,用于自动发送电子邮件。这个脚本通常需要配置SMTP服务器、端口、邮箱地址和密码等信息,并使用Python的内置库如smtplib和email来构建和发送邮件。

以下是一个使用Python发送邮件的脚本示例,我们将使用smtplib库和email库来实现这个功能。

Python发送邮件脚本(图片来源网络,侵删)

确保已经安装了smtplib库和email库,如果没有安装,可以使用以下命令安装:

 pip install securesmtplib pip install email

我们创建一个名为send_email.py的Python脚本,并添加以下代码:

 import smtplib from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText def send_email(subject, body, to_email):     # 配置发件人邮箱和密码     from_email = "your_email@example.com"     password = "your_password"     # 创建邮件对象     msg = MIMEMultipart()     msg["From"] = from_email     msg["To"] = to_email     msg["Subject"] = subject     # 添加邮件正文     msg.attach(MIMEText(body, "plain"))     # 连接到SMTP服务器     server = smtplib.SMTP("smtp.example.com", 587)     server.starttls()     # 登录到发件人邮箱     server.login(from_email, password)     # 发送邮件     server.sendmail(from_email, to_email, msg.as_string())     # 关闭连接     server.quit() if __name__ == "__main__":     subject = "邮件主题"     body = "邮件正文"     to_email = "recipient@example.com"     send_email(subject, body, to_email)

在这个脚本中,我们定义了一个名为send_email的函数,它接受三个参数:邮件主题、邮件正文和收件人邮箱,我们使用smtplib库连接到SMTP服务器,然后使用email库创建一个邮件对象,并将邮件正文附加到邮件对象上,我们使用SMTP服务器的sendmail方法发送邮件。

请注意,您需要将脚本中的以下变量替换为您自己的值:

from_email:您的发件人邮箱地址

password:您的发件人邮箱密码

smtp.example.com:您的SMTP服务器地址(对于Gmail,这是smtp.gmail.com)

Python发送邮件脚本(图片来源网络,侵删)

587:您的SMTP服务器端口号(通常为587或465)

要运行此脚本,请在命令行中输入以下命令:

 python send_email.py

这将发送一封包含指定主题和正文的电子邮件到指定的收件人邮箱。


下面是一个用Python编写的基本发送邮件脚本,我将其以介绍的形式展示,以方便您理解每一行代码的作用。

行号 代码行 说明
1import smtplib 导入smtplib模块,用于发送邮件
2from email.mime.text import MIMEText 从email.mime.text模块导入MIMEText类,用于构建邮件内容
3from email.mime.multipart import MIMEMultipart 从email.mime.multipart模块导入MIMEMultipart类,用于构建带附件的邮件
4# 设置服务器信息 注释,说明下面的代码用于设置邮件服务器信息
5smtp_server = 'smtp.example.com' 设置SMTP服务器地址
6smtp_port = 587 设置SMTP服务器端口,通常非加密连接使用587
7smtp_user = 'your_email@example.com' 设置发件人邮箱账号
8smtp_password = 'your_password' 设置发件人邮箱密码
9# 设置邮件内容 注释,说明下面的代码用于设置邮件内容
10sender = 'your_email@example.com' 设置发件人邮箱
11receiver = 'receiver_email@example.com' 设置收件人邮箱
12subject = 'Python Test Email' 设置邮件主题
13body = 'This is a test email sent from a Python script.' 设置邮件正文
14msg = MIMEMultipart() 创建MIMEMultipart实例用于构建邮件
15msg['From'] = sender 设置邮件发件人
16msg['To'] = receiver 设置邮件收件人
17msg['Subject'] = subject 设置邮件主题
18msg.attach(MIMEText(body, 'plain')) 将正文添加到邮件中
19# 发送邮件 注释,说明下面的代码用于发送邮件
20with smtplib.SMTP(smtp_server, smtp_port) as server: 创建SMTP连接
21 server.starttls() 启动TLS加密
22 server.login(smtp_user, smtp_password) 登录SMTP服务器
23 server.sendmail(sender, receiver, msg.as_string()) 发送邮件
24print('Email sent successfully!') 打印发送成功的消息

请注意,在真实环境中使用时,您需要替换smtp_server,smtp_user,smtp_password,sender,receiver,subjectbody的值,以匹配您的实际邮件服务器设置和邮件内容。

出于安全考虑,不建议在脚本中硬编码密码,您可以使用环境变量或其他安全的配置管理方法来处理敏感信息。

Python发送邮件脚本(图片来源网络,侵删)

相关内容

热门资讯

一分钟内幕!科乐吉林麻将系统发... 一分钟内幕!科乐吉林麻将系统发牌规律,福建大玩家确实真的是有挂,技巧教程(有挂ai代打);所有人都在...
一分钟揭秘!微扑克辅助软件(透... 一分钟揭秘!微扑克辅助软件(透视辅助)确实是有挂(2024已更新)(哔哩哔哩);1、用户打开应用后不...
五分钟发现!广东雀神麻雀怎么赢... 五分钟发现!广东雀神麻雀怎么赢,朋朋棋牌都是是真的有挂,高科技教程(有挂方法)1、广东雀神麻雀怎么赢...
每日必看!人皇大厅吗(透明挂)... 每日必看!人皇大厅吗(透明挂)好像存在有挂(2026已更新)(哔哩哔哩);人皇大厅吗辅助器中分为三种...
重大科普!新华棋牌有挂吗(透视... 重大科普!新华棋牌有挂吗(透视)一直是有挂(2021已更新)(哔哩哔哩)1、完成新华棋牌有挂吗的残局...
二分钟内幕!微信小程序途游辅助... 二分钟内幕!微信小程序途游辅助器,掌中乐游戏中心其实存在有挂,微扑克教程(有挂规律)二分钟内幕!微信...
科技揭秘!jj斗地主系统控牌吗... 科技揭秘!jj斗地主系统控牌吗(透视)本来真的是有挂(2025已更新)(哔哩哔哩)1、科技揭秘!jj...
1分钟普及!哈灵麻将攻略小,微... 1分钟普及!哈灵麻将攻略小,微信小程序十三张好像存在有挂,规律教程(有挂技巧)哈灵麻将攻略小是一种具...
9分钟教程!科乐麻将有挂吗,传... 9分钟教程!科乐麻将有挂吗,传送屋高防版辅助(总是存在有挂)1、完成传送屋高防版辅助透视辅助安装,帮...
每日必看教程!兴动游戏辅助器下... 每日必看教程!兴动游戏辅助器下载(辅助)真是真的有挂(2025已更新)(哔哩哔哩)1、打开软件启动之...