python发送html邮件样式变了_Python自动发送HTML格式邮件

要活成两种样子:发光和不发光,不发光的时候都是在为发光做准备

这篇我们继续,python如何实现自动发送HTML格式邮件的~

邮件正文发汇总数据,附件发明细数据,这才是python邮件自动化的正确打开方式。

老规矩,文章底部可以获取源代码,废话不多说,直接开始。

1

更改MIMEText读取方式

如果你已经理解了前两篇的内容,那么,要实现HTML格式的邮件,只剩最后一个步骤。

之前我们的邮件正文是一句话“请查收数据!”,想让它显示表格的样式,需要先将send_email函数中的两句代码改成:

#邮件正文 body = html_data msg.attach(text.MIMEText(body, 'html', 'utf-8'))

改完之后,MIMEText方法会以HTML的方式读取body的内容,并将其attach到邮件的正文中。

由于大部分邮箱都是支持HTML标签的,因此,我们打开邮件的时候就能看到以表格样式展示的数据了(注意:手机可能不支持,会看不到)

2

了解HTML代码构成

那么,问题就变成了:如何构造一个表格样式,并将数据传入。

我们能通过这张图简单了解HTML文件的构成,表格的样式可以自行设置,重点是table部分的构造。上一篇中我们是通过for循环遍历每一个数据,然后将其填充至Excel表格中,这里我们也可以通过for循环遍历,将其构造成table格式。

3

编写HTML模板

新建一个HTML模板文件“EmailHTML.html”,表格的表头部分用#{title}表示,内容部分用#{content}表示。(

python发送html邮件样式变了_Python自动发送HTML格式邮件_第1张图片

4

for循环遍历,传入数据

通过for循环对数据进行遍历,构造新的html代码,来替换上面的模板

python发送html邮件样式变了_Python自动发送HTML格式邮件_第2张图片

至此,将所有代码串起来,就可以实现python发送HTML格式邮件的功能了。

大家有什么问题也欢迎留言讨论。

你可能感兴趣的:(python发送html邮件样式变了_Python自动发送HTML格式邮件)