Python实现使用email.mime.image模块发送带图片附件的邮件示例
发布时间:2023-12-14 19:29:27
发送带图片附件的邮件,需要使用Python的email和smtplib模块。具体实现步骤如下:
导入所需的模块:
from email.mime.multipart import MIMEMultipart from email.mime.image import MIMEImage from email.mime.text import MIMEText import smtplib
设置发件人、收件人和邮箱服务器信息:
fromaddr = "your_email@gmail.com" toaddr = "recipient_email@gmail.com" username = "your_email@gmail.com" password = "your_email_password"
创建邮件对象,添加发件人、收件人和主题:
msg = MIMEMultipart() msg['From'] = fromaddr msg['To'] = toaddr msg['Subject'] = "邮件主题"
添加文本内容:
body = "这是邮件正文" msg.attach(MIMEText(body, 'plain'))
添加图片附件:
with open("image.jpg", 'rb') as f:
img_data = f.read()
msg.attach(MIMEImage(img_data, name="image.jpg"))
发送邮件:
server = smtplib.SMTP('smtp.gmail.com', 587)
server.starttls()
server.login(username, password)
server.send_message(msg)
server.quit()
完整示例代码如下:
from email.mime.multipart import MIMEMultipart
from email.mime.image import MIMEImage
from email.mime.text import MIMEText
import smtplib
fromaddr = "your_email@gmail.com"
toaddr = "recipient_email@gmail.com"
username = "your_email@gmail.com"
password = "your_email_password"
msg = MIMEMultipart()
msg['From'] = fromaddr
msg['To'] = toaddr
msg['Subject'] = "邮件主题"
body = "这是邮件正文"
msg.attach(MIMEText(body, 'plain'))
with open("image.jpg", 'rb') as f:
img_data = f.read()
msg.attach(MIMEImage(img_data, name="image.jpg"))
server = smtplib.SMTP('smtp.gmail.com', 587)
server.starttls()
server.login(username, password)
server.send_message(msg)
server.quit()
以上示例代码使用了Gmail作为发件邮箱,需要注意在使用时将fromaddr、toaddr、username和password替换为实际的邮箱地址和密码。
希望这个示例能帮到你!
