在本教程中,我们将学习如何使用 Python 中的 smtplib
和 email
库发送带有附件的电子邮件。我们将通过一个简单的示例来演示如何编写代码来完成这个任务。
在开始之前,确保你已经安装了 Python,并且你有一个有效的电子邮件地址,以及你的邮件账户的用户名和密码。
我们将首先编写一个 Python 脚本,用于连接到 SMTP 服务器并发送电子邮件。以下是脚本的基本结构:
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.base import MIMEBase
from email import encoders
import os
# 发件人信息
sender_email = "你的邮箱地址"
sender_password = "你的邮箱密码"
# 收件人信息
receiver_email = "收件人邮箱地址"
# 构建邮件
msg = MIMEMultipart()
msg['From'] = sender_email
msg['To'] = receiver_email
msg['Subject'] = "邮件主题"
# 邮件正文
body = "邮件正文内容"
msg.attach(MIMEText(body, 'plain'))
# 添加附件
filename = "附件文件名"
attachment = open(filename, "rb")
part = MIMEBase('application', 'octet-stream')
part.set_payload((attachment).read())
encoders.encode_base64(part)
part.add_header('Content-Disposition', "attachment; filename= %s" % os.path.basename(filename))
msg.attach(part)
# 连接到SMTP服务器
server = smtplib.SMTP_SSL('smtp.qq.com', 465)
server.login(sender_email, sender_password)
# 发送邮件
text = msg.as_string()
server.sendmail(sender_email, receiver_email, text)
# 关闭连接
server.quit()
print("邮件发送成功!")
在脚本中,你需要替换以下信息:
sender_email
:你的发件人邮箱地址。sender_password
:你的发件人邮箱密码。receiver_email
:收件人邮箱地址。msg['Subject']
:邮件主题。body
:邮件正文内容。filename
:附件文件名。确保你已经生成了附件文件并放置在当前目录下。然后运行脚本,它将会连接到 SMTP 服务器并发送带有附件的电子邮件到指定的收件人邮箱地址。
通过本教程,你学会了如何使用 Python 中的 smtplib
和 email
库发送带有附件的电子邮件。这个技能可以应用于自动化发送邮件、报告生成等各种场景中。希望这个教程对你有所帮助!