Python编写邮件发送脚本指南

在数字化时代,自动化任务已成为提高工作效率的关键。Python作为一种功能强大的编程语言,可以轻松实现邮件发送的自动化。本文将详细介绍如何使用Python编写一个简单的邮件发送脚本,帮助你在日常工作中节省宝贵时间。

Python编写邮件发送脚本指南

准备工作

首先,确保你的电脑上已安装Python环境。你可以从Python官网下载并安装最新版本。接下来,我们需要安装一个用于发送邮件的库——smtplib。这个库是Python标准库的一部分,无需额外安装。

导入必要的库

打开你的Python编辑器(如PyCharm、VSCode等),创建一个新的Python文件,命名为send_email.py。在文件的开头,导入以下库:

import smtplib
from email.mime.text import MIMEText
from email.header import Header

这些库将帮助我们构建和发送邮件。

配置邮件服务器

接下来,我们需要配置邮件服务器的相关信息。以常用的Gmail为例,代码如下:

smtp_server = 'smtp.gmail.com'
smtp_port = 587
sender_email = 'your_email@gmail.com'
receiver_email = 'receiver_email@example.com'
password = 'your_password'

请将your_email@gmail.com、receiver_email@example.com和your_password替换为你的实际邮箱地址、收件人邮箱地址和邮箱密码。

构建邮件内容

使用MIMEText类来构建邮件内容。以下是一个简单的示例:

subject = 'Hello from Python'
body = 'This is a test email sent from a Python script.'
message = MIMEText(body, 'plain', 'utf-8')
message['From'] = Header(sender_email)
message['To'] = Header(receiver_email)
message['Subject'] = Header(subject)

这里,我们设置邮件的主题为Hello from Python,正文为This is a test email sent from a Python script.。你可以根据需要修改这些内容。

发送邮件

现在,我们已经准备好所有必要的信息,可以开始发送邮件了。添加以下代码:

try:
    server = smtplib.SMTP(smtp_server, smtp_port)
    server.starttls()
    server.login(sender_email, password)
    server.sendmail(sender_email, receiver_email, message.as_string())
    print('Email sent successfully!')
except Exception as e:
    print(f'An error occurred: {e}')
finally:
    server.quit()

这段代码首先创建一个SMTP连接,然后使用starttls方法启用加密,接着登录邮箱,发送邮件,并在最后关闭连接。

测试脚本

保存并运行你的脚本:

python send_email.py

如果一切配置正确,你应该会在收件人的邮箱中看到刚刚发送的测试邮件。

安全提示

在使用脚本发送邮件时,务必注意保护你的邮箱密码。避免将密码直接硬编码在脚本中,可以使用环境变量或加密存储方式来提高安全性。

扩展功能

这个基础脚本可以进一步扩展,例如添加附件、发送HTML格式的邮件、处理多个收件人等。以下是一个添加附件的示例:

from email.mime.multipart import MIMEMultipart
from email.mime.base import MIMEBase
from email import encoders

attachment_path = 'path/to/your/file.pdf'
attachment_filename = 'file.pdf'

message = MIMEMultipart()
message['From'] = Header(sender_email)
message['To'] = Header(receiver_email)
message['Subject'] = Header(subject)

message.attach(MIMEText(body, 'plain', 'utf-8'))

with open(attachment_path, 'rb') as attachment:
    part = MIMEBase('application', 'octet-stream')
    part.set_payload(attachment.read())
    encoders.encode_base64(part)
    part.add_header(
        'Content-Disposition',
        f'attachment; filename={attachment_filename}',
    )
    message.attach(part)

# 发送邮件的代码保持不变

通过这种方式,你可以轻松地将附件添加到邮件中。

使用Python编写邮件发送脚本不仅简单高效,还能大大提升你的工作效率。希望本文能帮助你快速掌握这一技能,并在实际工作中发挥其潜力。快去试试吧,让自动化成为你工作的一部分!

你可能想看:
« 上一篇
下一篇 »

相关推荐

python爬虫教程PDF,Python爬虫书PDF

2026年09月02日

31阅读

外国教程python,python编程教学视频

2026年09月02日

25阅读

python简明教程沈洁元,python详细基础教程

2026年09月02日

21阅读

python库包教程,python 包

2026年09月02日

27阅读

python教程大全集,python教程600集

2026年09月02日

26阅读

python入门教程完整版,python零基础入门全套教程视频

2026年09月02日

22阅读