essage.setFileName如何发送文件
时间: 2024-01-09 08:04:29 浏览: 64
使用 `message.setFileName()` 方法可以设置邮件的附件文件名。以下是示例代码:
```python
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.application import MIMEApplication
# 设置邮件基本信息
msg = MIMEMultipart()
msg['From'] = 'sender@example.com'
msg['To'] = 'recipient@example.com'
msg['Subject'] = '邮件主题'
# 添加邮件正文
body = '邮件正文'
msg.attach(MIMEText(body, 'plain'))
# 添加邮件附件
with open("/path/to/file", "rb") as f:
attachment = MIMEApplication(f.read(),_subtype="pdf")
attachment.add_header('Content-Disposition','attachment',filename="filename.pdf")
msg.attach(attachment)
# 发送邮件
s = smtplib.SMTP('smtp.example.com')
s.send_message(msg)
s.quit()
```
在上述代码中,我们创建了一个 `MIMEMultipart` 对象来存储邮件信息,并使用 `MIMEApplication` 类型来添加附件文件。使用 `add_header()` 方法来设置附件文件名。最后,我们使用 SMTP 协议发送邮件。
阅读全文