Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/SPuerBRead/HTMLSimilarity

网页相似度判断:根据网页结构判断页面相似性 ,可用于相似度计算、越权检测等(Determine page similarity based on HTML page structure)
https://github.com/SPuerBRead/HTMLSimilarity

diff html-diff html-similarity

Last synced: 21 days ago
JSON representation

网页相似度判断:根据网页结构判断页面相似性 ,可用于相似度计算、越权检测等(Determine page similarity based on HTML page structure)

Awesome Lists containing this project

README

        

# HTMLSimilarity
根据网页结构判断页面相似性(Determine page similarity based on HTML page structure)

[![PyV](https://img.shields.io/badge/python-3.7-brightgreen.svg)]()

使用方法
-----------

```
from htmlsimilarity import get_html_similarity

is_similarity, value = get_html_similarity(html_doc1, html_doc2)
```

说明
-----------

##### 输入参数:
* HTML文档1
* HTML文档2
* 降维后的维数,默认是5000

##### 返回值:
* 是否相似
* 相似值(value<0.2时相似,value>0.2时不相似)

判断方法
-----------

根据网页的DOM树确定网页的模板特征向量,对模板特征向量计算网页结构相似性。

详细参考:[李景阳, 张波. 网页结构相似性确定方法及装置:.](http://cprs.patentstar.com.cn/Search/Detail?ANE=9HCC7BGA7AHACGEA7GAA8BHA5ADA9FGF8CBA9EDA9BDC9FCG)

原理参考上述专利文章,对其判断相似性部分进行简单实现。

用途
-----------

判断越权时,需要对response进行对比,当后端返回渲染后HTML的情况下,无法直接判断是否出现了越权,利用常规的文本相似度对比如difflib,通过分词或最长公共子串等方法进行判断并不适用于用来判断越权,所以使用根据页面结构判断相似度,确定是否出现了越权。