我使用了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))
答案 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