python: smtp发送邮件带有附件图片的代码
时间: 2023-11-09 10:07:58 浏览: 166
以下是一个使用 Python SMTP 发送带有附件图片的邮件的示例代码:
```python
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.image import MIMEImage
# 邮件发送者和接收者信息
sender = 'sender@example.com'
receiver = 'receiver@example.com'
# 邮件主题、正文和附件
msg = MIMEMultipart()
msg['Subject'] = '带有图片附件的邮件'
msg['From'] = sender
msg['To'] = receiver
text = MIMEText('这是一封带有图片附件的邮件。')
msg.attach(text)
with open('image.jpg', 'rb') as f:
image = MIMEImage(f.read())
image.add_header('Content-Disposition', 'attachment', filename='image.jpg')
msg.attach(image)
# 发送邮件
smtp_server = 'smtp.example.com'
smtp_port = 587
smtp_username = 'username'
smtp_password = 'password'
try:
server = smtplib.SMTP(smtp_server, smtp_port)
server.starttls()
server.login(smtp_username, smtp_password)
server.sendmail(sender, receiver, msg.as_string())
server.quit()
print('邮件发送成功')
except Exception as e:
print('邮件发送失败:', e)
```
注意,代码中的 `image.jpg` 应该替换为你要发送的图片的文件名。同时,你需要将 `smtp_server`、`smtp_port`、`smtp_username` 和 `smtp_password` 替换为你自己的 SMTP 服务器地址、端口、用户名和密码。
阅读全文