是否有推荐的方法来按程序构建 html 报告
Is there a recommended way to procedurally build up an html report
我正在寻求有关如何最好地将大量程序输出转化为 HTML 报告的建议。我现在主要做的是手工构建报告。我正在使用的 python 程序非常大,并且在整个过程中都有大量的日志记录。我正在我的报告中找到我想要的日志记录部分,将其标记为 HTML 并将其附加到我的最终结果中。
我正在寻找一个 HTML 构建 Python 模块,希望它比手动格式化一堆字符串更优雅。
这个 SO 问题似乎表明 HTML 构建模块不如较新的模板模块理想:
python html generator
我对 Jinja 和 Django 模板有点熟悉,但我不确定这对我的情况有何影响。
感谢您的任何建议。
有多种方法可以从 Python 生成 HTML。
最干净的选择是使用 模板引擎:
- 创建一个模板 HTML 带有可变数据占位符的报告
- 使用提供此变量数据的上下文渲染模板
Python 中有多个独立的(意味着 Django 不是一个选项)模板引擎:
示例(使用 mako
):
创建一个 index.tpl
模板文件:
<html>
<head>
<title>${title}</title>
</head>
<body>
<h1>${header}</h1>
</body>
</html>
在 python 代码中,创建一个 Template()
实例并渲染模板:
>>> from mako.template import Template
>>> template = Template(filename='index.tpl')
>>> print template.render(title='My Title', header='My Header')
<html>
<head>
<title>My Title</title>
</head>
<body>
<h1>My Header</h1>
</body>
</html>
我正在寻求有关如何最好地将大量程序输出转化为 HTML 报告的建议。我现在主要做的是手工构建报告。我正在使用的 python 程序非常大,并且在整个过程中都有大量的日志记录。我正在我的报告中找到我想要的日志记录部分,将其标记为 HTML 并将其附加到我的最终结果中。
我正在寻找一个 HTML 构建 Python 模块,希望它比手动格式化一堆字符串更优雅。
这个 SO 问题似乎表明 HTML 构建模块不如较新的模板模块理想: python html generator
我对 Jinja 和 Django 模板有点熟悉,但我不确定这对我的情况有何影响。
感谢您的任何建议。
有多种方法可以从 Python 生成 HTML。
最干净的选择是使用 模板引擎:
- 创建一个模板 HTML 带有可变数据占位符的报告
- 使用提供此变量数据的上下文渲染模板
Python 中有多个独立的(意味着 Django 不是一个选项)模板引擎:
示例(使用 mako
):
创建一个
index.tpl
模板文件:<html> <head> <title>${title}</title> </head> <body> <h1>${header}</h1> </body> </html>
在 python 代码中,创建一个
Template()
实例并渲染模板:>>> from mako.template import Template >>> template = Template(filename='index.tpl') >>> print template.render(title='My Title', header='My Header') <html> <head> <title>My Title</title> </head> <body> <h1>My Header</h1> </body> </html>