如何使用python比较两个html文件并仅显示新html文件中的差异

时间:2018-08-03 18:11:22

标签: python html python-3.x python-2.7 difflib

我使用了difflib,但是html_table行花了很长时间才能执行。

import difflib

html_1 = data1
html_2 = data2

htmldiff = difflib.HtmlDiff()
html_table = htmldiff.make_table([html_1], [html_2])

我尝试了htmldiffer,但它给了我ValueError:stat:Windows路径太长

from htmldiffer import diff

str_a = data1
str_b = data2
d = diff.HTMLDiffer(data1, data2)

print(d.combined_diff)

我尝试了htmltreediff,它给出了NameError:名称'basestring'未定义

from htmltreediff import diff
print (diff(data1, data2 , pretty=True))

1 个答案:

答案 0 :(得分:0)

这是使长文件路径在Windows上可用的方法: https://www.howtogeek.com/266621/how-to-make-windows-10-accept-file-paths-over-260-characters/

与difflib有关的CPython问题:

  

长块的解决方案是将它们分成较小的部分,然后   分别处理。这样二次时间会更短,我们   仍然可以从_fancy_helper逻辑中受益。

htmltreediff-不支持python 3