在Python中使用MIMEBase()发送带表格附件的邮件
发布时间:2024-01-17 01:31:15
在Python中,可以使用MIMEBase()模块来发送带有附件的邮件。在下面的代码示例中,我们将创建一个带有表格附件的邮件,并发送给指定的收件人。
首先,需要导入所需的模块:
import smtplib from email.mime.multipart import MIMEMultipart from email.mime.base import MIMEBase from email import encoders
接下来,使用MIMEMultipart()函数创建一个包含多个部分的邮件:
msg = MIMEMultipart()
然后,设置邮件的主题(Subject),发件人(From)和收件人(To):
msg['Subject'] = '邮件主题' msg['From'] = '发件人@domain.com' msg['To'] = '收件人@domain.com'
接着,添加邮件的文本内容:
msg.attach(MIMEText('邮件正文内容', 'plain'))
然后,打开附件文件,并将其添加到邮件中:
filename = '附件文件名.xlsx'
attachment = open(filename, 'rb')
part = MIMEBase('application', 'octet-stream')
part.set_payload((attachment).read())
encoders.encode_base64(part)
part.add_header('Content-Disposition', "attachment; filename= %s" % filename)
msg.attach(part)
请确保将附件文件名.xlsx替换为实际的附件文件名。同时,注意在邮件中的文件类型可能会根据附件文件的类型进行更改。
最后,使用SMTP服务器发送邮件:
server = smtplib.SMTP('smtp.gmail.com', 587)
server.starttls()
server.login("发件人邮箱", "发件人邮箱密码")
server.send_message(msg)
server.quit()
请确保将"smtp.gmail.com"替换为实际的SMTP服务器地址,"发件人邮箱"替换为实际的发件人邮箱,以及"发件人邮箱密码"替换为实际的邮箱密码。
以上就是在Python中使用MIMEBase()发送带有表格附件的邮件的示例代码。你可以根据自己的需要进行调整和修改。
