我正在尝试为网站实现一个污损检测器。为了实现这一目标,我应该用 Java 开发一个工具来比较两个 HTML 文件之间的相似性。我打算剥离 URL 和 JS 来单独处理它们。
我正在寻找一种工具/库/算法,可以用来计算相似性指标(理想情况下是百分比),以检测网站中的重大变化。
感谢您的帮助。
最佳答案
由于 HTML 本质上只是基于文本的标记,因此最简单的方法是 Levenshtein distance 。该算法通过为每个添加、减去或删除单个字符分配一个点来确定 2 个输入字符串之间的差异,并确定此结果的“最短”距离。
Informally, the Levenshtein distance between two words is the minimum number of single-character edits (insertion, deletion, substitution) required to change one word into the other.
Java 的示例实现 can be found here .
通过将编辑距离除以最大输入字符串的长度,您可以计算两个字符串之间的差异百分比。
关于java - HTML 文件中的相似度百分比,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17099713/