在两个帖子版本(原始版本和编辑版本)之间检查帖子中的更改(编辑/添加/删除文本)的最佳方法是什么?
我正在使用降价,所以我不确定使用difflib.htmldiff是否是一个好主意。我的目标是用绿色背景标记添加的文本,用红色背景标记删除的文本,类似于github的功能。

最佳答案

尝试使用ghdiff,github样式的html进行统一区分。它是on PyPI,但目前有better docs on GitHub。你需要pip install ghdiff
简单的用法,假设降价在markdown1markdown2

import ghdiff
diff_as_html = ghdiff.diff(markdown1,markdown2)

不过,这里有一个更明确的演示。假设你有这两个降价字符串:
md1 = '''
# Hello world

I am text

* No really

'''

md2 = '''
# Hi world

I am text

* No really

'''

我们可以对这些
import ghdiff
diff_as_html = ghdiff.diff(md1,md2)

渲染时,它看起来如下:
以下是ipython笔记本中的原始和渲染:

08-27 05:17