difflib.HTMLDiff.make_file()的输出未在浏览器中呈现

时间:2016-01-25 00:19:19

标签: python html python-2.7 difflib

使用PyMOTW给出的两个文本,difflib.HtmlDiff.make_file()用于生成HTML输出。然而,当在浏览器中保存和打开时,原始HTML将显示而不是呈现为预期的表。

make_file()的输出是否格格不入?见here

Python 2.7

1 个答案:

答案 0 :(得分:1)

我正在使用python 3.5,我正在获取正确呈现的链接中的html内容,而不进行任何修改。您询问了make_tablemake_file。这来自您提供的链接:

  

此示例使用make_table(),它仅返回包含差异信息的表标记。 make_file()方法生成一个完整格式的HTML文件作为输出。

因此,您显示的输出来自make_file(),而不是make_table()

如果你正在使用django (只是一个疯狂的猜测)试试这个:

{% autoescape off %}
    {{ your_html_content }}
{% endautoescape %}

您也可以使用safe执行相同操作:

{{ your_table_content|safe }}

来自django docs:

  

在输出之前将字符串标记为不需要进一步的HTML转义。   当自动关闭时,此过滤器无效

了解更多herehere