emailmessage的用法
时间: 2023-06-12 21:07:16 浏览: 126
`email.message` 是 Python 中用于处理电子邮件的标准库模块,通过它可以方便的创建、发送和解析邮件。下面是一个简单的示例:
```python
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.header import Header
# 创建一个带附件的邮件实例
message = MIMEMultipart()
# 设置邮件主题、发件人、收件人
subject = '测试邮件'
message['Subject'] = Header(subject, 'utf-8')
message['From'] = 'sender@example.com'
message['To'] = 'receiver@example.com'
# 邮件正文
text = '这是一封测试邮件。'
text_plain = MIMEText(text, 'plain', 'utf-8')
message.attach(text_plain)
# 邮件附件
with open('attachment.txt', 'rb') as f:
attachment = MIMEText(f.read(), 'base64', 'utf-8')
attachment['Content-Type'] = 'application/octet-stream'
attachment['Content-Disposition'] = 'attachment; filename="attachment.txt"'
message.attach(attachment)
# 发送邮件
smtp_server = 'smtp.example.com'
smtp_port = 25
username = 'username'
password = 'password'
try:
smtp = smtplib.SMTP(smtp_server, smtp_port)
smtp.login(username, password)
smtp.sendmail(message['From'], message['To'], message.as_string())
smtp.quit()
print('邮件发送成功')
except Exception as e:
print('邮件发送失败:', e)
```
上述示例中,我们首先导入了需要使用的模块,创建了一个带附件的邮件实例,设置了邮件主题、发件人、收件人、正文和附件,然后通过 SMTP 服务器发送邮件。其中,`MIMEText` 类用于创建邮件正文和附件,`MIMEMultipart` 类用于创建带附件的邮件实例,`Header` 类用于设置邮件主题和发件人名称,`smtplib.SMTP` 类用于连接 SMTP 服务器并发送邮件。