要使用Python发送电子邮件,您可以使用内置的 smtplib
模块和 email
模块。以下是一个简单的示例,演示如何使用这些模块来发送电子邮件:
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.mime.application import MIMEApplication
# 配置邮件参数
smtp_server = 'smtp.example.com' # 替换为您的SMTP服务器地址
smtp_port = 587 # 替换为您的SMTP服务器端口号
smtp_username = 'your_username' # 替换为您的SMTP用户名
smtp_password = 'your_password' # 替换为您的SMTP密码
sender_email = '[email protected]' # 发件人邮箱
recipient_email = '[email protected]' # 收件人邮箱
subject = 'Test Email' # 邮件主题
message_text = 'This is a test email sent from Python.' # 邮件正文内容
# 创建邮件对象
msg = MIMEMultipart()
msg['From'] = sender_email
msg['To'] = recipient_email
msg['Subject'] = subject
# 添加正文内容
msg.attach(MIMEText(message_text, 'plain'))
# 如果需要,添加附件
attachment_path = 'path/to/attachment.txt' # 替换为附件的实际路径
attachment = open(attachment_path, 'rb').read()
part = MIMEApplication(attachment)
part.add_header('Content-Disposition', 'attachment', filename='attachment.txt')
msg.attach(part)
# 连接到SMTP服务器并发送邮件
with smtplib.SMTP(smtp_server, smtp_port) as server:
server.starttls()
server.login(smtp_username, smtp_password)
server.sendmail(sender_email, recipient_email, msg.as_string())
print('Email sent successfully.')
在上述代码中,您需要将相应的参数(如SMTP服务器地址、端口号、用户名、密码、发件人、收件人等)替换为您自己的信息。还可以根据需要自定义邮件的主题、正文和附件。
请注意,如果您使用的是 Gmail 的 SMTP 服务器,可能需要开启“允许低安全性应用”选项,因为一些电子邮件提供商强制要求使用更安全的授权方式。如果您需要在生产环境中使用此代码,请确保保护好您的用户名和密码。