python smtp 附件
时间: 2023-06-22 20:25:05 浏览: 38
您好!关于 Python SMTP 发送带附件的邮件,可以使用 Python 内置的邮件模块 `email` 和 `smtplib`。以下是一个简单的代码示例,您可以参考下:
```python
import os
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.mime.application import MIMEApplication
# 发件人邮箱信息
from_addr = 'your_email@xxx.com' # 发件人邮箱
password = 'your_password' # 发件人邮箱密码
# 收件人邮箱信息
to_addr = 'recipient_email@xxx.com' # 收件人邮箱
# 邮件主题、正文
subject = 'Python SMTP 附件测试'
content = '这是一封带附件的邮件。'
# 构造邮件对象
msg = MIMEMultipart()
msg['From'] = from_addr
msg['To'] = to_addr
msg['Subject'] = subject
# 添加邮件正文
text = MIMEText(content)
msg.attach(text)
# 添加附件
file_path = 'attachment.txt' # 附件文件路径
with open(file_path, 'rb') as f:
attachment = MIMEApplication(f.read())
attachment.add_header('Content-Disposition', 'attachment', filename=os.path.basename(file_path))
msg.attach(attachment)
# 发送邮件
server = smtplib.SMTP('smtp.xxx.com', 25) # 发件人邮箱所在的 SMTP 服务器地址和端口号
server.login(from_addr, password)
server.sendmail(from_addr, to_addr, msg.as_string())
server.quit()
```
需要注意的是,使用 SMTP 发送邮件时,需要先登录发件人邮箱,才能进行邮件发送操作。另外,附件可以是任何类型的文件,只需要将文件读取为二进制格式,并设置正确的 MIME 类型即可。