简介
有时,我们使用的系统会发送系统运行情况的email报告。email的内容可能是格式化的纯文本数据,但是邮件客户端接收到后,可能因为非等宽字体显示的原因,导致客户端显示的样式非常不便于阅读。本文介绍如何编写和发送HTML形式的邮件,来解决这个问题。
E-mail渲染器机制
Email支持纯文本和HTML两种格式。一个纯文本的email渲染器通常以等宽字体对邮件内容进行渲染,但这点并不能得到保证。最重要的是,你对纯文本的邮件内容如何显示无能为力。在很多时候,自动发送的邮件里含有格式化的纯文本监控、异常等信息,在邮件客户端接收后,由于以非等宽字体格式显示,导致原格式化的信息无法正常显示。这时,HTML格式邮件能够帮助我们解决这类问题。
如果你的邮件客户端能够支持HTML格式的文本,这个问题就很容易解决。我们可以把需要格式化的内容通过font标签:<font face="Courier New, Courier, monospace"></font>将相关内容包含在这个标签中,这样客户端就可以使用等宽字体来对内容进行显示。
在Python代码中,你可以简单的进行如下的处理:
text = '<font face="Courier New, Courier, monospace">' + text + '</font>'
HTML邮件实例
下面是一个实际的例子,这里我们使用了HTML的<pre&