邮箱发送附件为压缩文件python
时间: 2024-04-12 07:31:12 浏览: 169
利用Python发送邮件或发带附件的邮件
要通过电子邮件发送压缩文件作为附件,您可以使用 `smtplib` 模块来发送电子邮件,并使用 `email` 和 `MIMEMultipart` 模块来创建包含附件的邮件。以下是一个示例代码:
```python
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.base import MIMEBase
from email import encoders
# 邮件参数
sender_email = "<发件人邮箱>"
receiver_email = "<收件人邮箱>"
subject = "<邮件主题>"
body = "<邮件正文>"
attachment_path = "<要发送的压缩文件路径>"
# 创建邮件对象
message = MIMEMultipart()
message["From"] = sender_email
message["To"] = receiver_email
message["Subject"] = subject
# 添加邮件正文
message.attach(MIMEText(body, "plain"))
# 添加附件
with open(attachment_path, "rb") as attachment_file:
part = MIMEBase("application", "octet-stream")
part.set_payload(attachment_file.read())
encoders.encode_base64(part)
part.add_header("Content-Disposition", f"attachment; filename= {attachment_path}")
message.attach(part)
# 发送邮件
with smtplib.SMTP("smtp.gmail.com", 587) as smtp:
smtp.starttls()
smtp.login("<发件人邮箱>", "<发件人邮箱密码>")
smtp.send_message(message)
```
您需要将 `<发件人邮箱>`、`<收件人邮箱>`、`<邮件主题>`、`<邮件正文>` 和 `<要发送的压缩文件路径>` 替换为实际的值。请确保替换 `<发件人邮箱>` 和 `<发件人邮箱密码>` 为用于发送电子邮件的有效凭据。
这个示例代码假设您使用 Gmail 发送邮件,并且要发送的压缩文件位于本地计算机上。如果您使用其他电子邮件服务提供商,请相应地调整 SMTP 服务器和端口。
阅读全文