使用python的HTML电子邮件

时间:2016-04-22 13:18:06

标签: python html email

我有一个python脚本,可以从我的数据库中下载某些信息,用于向客户发送电子邮件。

目前我将html作为字符串拉入并用hthon变量替换html中的预定义字符串。这感觉就像一个非常原始的方式来做到这一点。

我发现了这个:http://karrigell.sourceforge.net/en/pythoninsidehtml.html - 然而,这并不是我想要的,但几乎是正确的想法。

是否有更有效的方法用我的python变量替换HTML电子邮件中的值来创建包含所有用户数据的最终电子邮件,而不仅仅是将它们换成字符串?

1 个答案:

答案 0 :(得分:1)

尝试使用emails库。它支持像Jinja这样的HTML模板。

来自documentation

的摘录
from emails.template import JinjaTemplate as T

message = emails.html(subject=T('Payment Receipt No.{{ billno }}'),
                      html=T('<p>Dear {{ name }}! This is a receipt...'),
                      mail_from=('ABC', 'robot@mycompany.com'))

message.send(to=('John Brown', 'jbrown@gmail.com'),
             render={'name': 'John Brown', 'billno': '141051906163'})