CN115687736B - 一种web应用的搜索方法、装置及电子设备 - Google Patents
一种web应用的搜索方法、装置及电子设备 Download PDFInfo
- Publication number
- CN115687736B CN115687736B CN202211712588.4A CN202211712588A CN115687736B CN 115687736 B CN115687736 B CN 115687736B CN 202211712588 A CN202211712588 A CN 202211712588A CN 115687736 B CN115687736 B CN 115687736B
- Authority
- CN
- China
- Prior art keywords
- web application
- processed
- resource
- type file
- feature code
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例提供了一种web应用的搜索方法、装置及电子设备,搜索方法包括:获取待处理的web应用所在站点的静态资源;以预设比特数为单位,对所述静态资源对应的摘要值进行分割,生成所述待处理的web应用的特征编码;基于预设的搜索模糊度,在预设数据库中,利用所述待处理的web应用特征编码进行搜索,获得所述待处理的web应用的相似web应用;其中,所述预设数据库为特征编码与web应用的关联关系的集合,能够提高web应用的相似性比较的准确度及搜索速度,实现相似web应用的快速、准确的搜索。
Description
技术领域
本申请各实施例属于计算机技术领域,尤其涉及一种web应用的搜索方法、装置及电子设备。
背景技术
随着互联网的发展,web应用呈现大规模、快速增长的趋势。相似web应用的搜索,一般是基于web应用对应的web页面,该方法为基于静态页面进行文本相似性比较,不考虑动态渲染的页面内容,因此准确性较差。而基于动态页面的相似性比较方法,比现有的基于静态页面进行文本相似性比较的方法,处理时间更长。
基于此,本说明书实施例提供一种新的方法,能够解决现有技术中搜索相似web应用时处理时间长、准确性低的问题。
发明内容
本说明书实施例提供一种web应用的搜索方法、装置和设备,以解决如下问题:现有技术中搜索相似web应用时处理时间长、准确性低的问题。
为解决上述技术问题,本说明书实施例是这样实现的:
本说明书实施例提供一种web应用的搜索方法,所述搜索方法包括:
获取待处理的web应用所在站点的静态资源;
以预设比特数为单位,对所述静态资源对应的摘要值进行分割,生成所述待处理的web应用的特征编码;
基于预设的搜索模糊度,在预设数据库中,利用所述待处理的web应用特征编码进行搜索,获得所述待处理的web应用的相似web应用;
其中,
所述预设数据库为特征编码与web应用的关联关系的集合。
本说明书实施例还提供一种web应用的搜索装置,所述搜索装置包括:
获取模块,获取待处理的web应用所在站点的静态资源;
分割模块,以预设比特数为单位,对所述静态资源对应的摘要值进行分割,生成所述待处理的web应用的特征编码;
搜索模块,基于预设的搜索模糊度,在预设数据库中,利用所述待处理的web应用特征编码进行搜索,获得所述待处理的web应用的相似web应用;
其中,
所述预设数据库为特征编码与web应用的关联关系的集合。
本说明书实施例还提供一种电子设备,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
获取待处理的web应用所在站点的静态资源;
以预设比特数为单位,对所述静态资源对应的摘要值进行分割,生成所述待处理的web应用的特征编码;
基于预设的搜索模糊度,在预设数据库中,利用所述待处理的web应用特征编码进行搜索,获得所述待处理的web应用的相似web应用;
其中,
所述预设数据库为特征编码与web应用的关联关系的集合。
本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:通过获取待处理的web应用所在站点的静态资源;以预设比特数为单位,对所述静态资源对应的摘要值进行分割,生成所述待处理的web应用的特征编码;基于预设的搜索模糊度,在预设数据库中,利用所述待处理的web应用特征编码进行搜索,获得所述待处理的web应用的相似web应用;其中,所述预设数据库为特征编码与web应用的关联关系的集合,能够提高web应用的相似性比较的准确度及搜索速度,实现相似web应用的快速、准确的搜索。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。后文将参照附图以示例性而非限制性的方式详细描述本申请的一些具体实施例。附图中相同的附图标记标示了相同或类似的部件或部分,本领域技术人员应该理解的是,这些附图未必是按比例绘制的,在附图中:
图1为本说明书实施例提供的一种web应用的搜索方法的流程示意图;
图2为本说明书实施例提供的一种web应用的搜索装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
web应用即web应用程序,是一种可以通过web访问的应用的程序,用户通过访问浏览器即可访问应用程序。在web应用资产数量日益庞大的环境下,为便于快速获取相似web应用,传统方式采用的是基于dom树的方法进行搜索,获得相似web应用。在本说明书中,基于web应用所在站点的静态资源,获取相似web应用。
图1为本说明书实施例提供的一种web应用的搜索方法的流程示意图,如图1所示,该方法包括:
步骤S101:获取待处理的web应用所在站点的静态资源。
在本说明书实施例中,待处理的web应用所在站点的静态资源的获取,可以包括如下步骤:
基于待处理的web应用站点的响应,获得待处理的web应用站点的响应结果;
解析待处理的web应用站点的响应结果,获得解析结果;
基于解析结果,进行匹配,获得待处理的web应用所在站点的静态资源。
在本说明书实施例中,基于解析结果,进行匹配,获得待处理的web应用所在站点的静态资源,具体可以采用如下方法:
基于解析结果,采用预设的正则匹配规则对解析结果进行匹配,获得与解析结果匹配的静态资源。由于获得的与解析结果匹配的静态资源中并不包括待处理的web应用的默认路径,因此,将web应用的默认路径及获得的与解析结果匹配的静态资源,一并作为待处理的web应用所在站点的静态资源。
步骤S103:以预设比特数为单位,对所述静态资源对应的摘要值进行分割,生成所述待处理的web应用的特征编码。
在本说明书实施例中,所述以预设比特数为单位,对所述静态资源对应的摘要值进行分割,生成所述待处理的web应用的特征编码,具体包括:
过滤所述静态资源,获得过滤后的静态资源;
按照资源类型的优先级,以所述预设比特数为单位,对所述过滤后的静态资源对应的摘要值进行分割,获得所述过滤后的静态资源对应的词表;
根据所述资源类型对应的权重,对所述词表进行赋权,获得赋权后的词表;
采用文本相似度算法,对所述赋权后的词表进行相似度比较,生成所述待处理的web应用的特征编码。
在具体实施例中,过滤静态资源的方法可以采用从黑名单中剔除资源的方法,黑名单可以包括:内置资源类型黑名单,内置文件名黑名单,内置哈希值黑名单中的一种或几种。其中,内置资源类型黑名单用于剔除属于内置资源类型黑名单的资源类型;内置文件名黑名单用于剔除属于内置文件名黑名单的文件名;哈希值黑名单用于剔除属于哈希值黑名单中的文件哈希值。
在本说明书实施例中,所述资源类型包括:JS类型文件,HTML类型文件,CSS类型文件、ICO类型文件中的一种或几种,所述资源类型的优先级顺序依次为:JS类型文件,HTML类型文件,CSS类型文件、ICO类型文件;
所述过滤后的静态资源对应的摘要值包括第一摘要值、第二摘要值、第三摘要值、第四摘要值中的至少一个;
其中:
根据所述资源类型的优先级,使用分割符号列表,对所述过滤后的静态资源中的JS类型文件的内容进行分割,形成第一词表;使用正则匹配算法,对所述过滤后的静态资源中的HTML类型文件的标签及属性值进行匹配,形成第二词表;使用正则匹配算法,对所述过滤后的静态资源中的CSS类型文件的css tag进行匹配,形成第三词表;
使用无权值的simhash算法分别计算所述第一词表的第一摘要值,获得所述第一摘要值;
使用无权值的simhash算法分别计算所述第二词表的第二摘要值,获得所述第二摘要值;
使用无权值的simhash算法分别计算所述第三词表的三摘要值,获得所述第三摘要值;
使用md5算法,计算所述过滤后的静态资源中的ICO类型文件,获得所述第四摘要值。
为了进一步理解本说明书实施例提供的资源类型,下面将详细予以说明。JS类型文件即javascript文件,为网页前台脚本。HTML类型文件即正常见到的网页格式的文件,HTML称为超文本标记语言,包括一系列标签,通过这些标签可以将网络上的文档格式统一,使分散的Internet资源连接为一个逻辑整体。HTML文本是由HTML命令组成的描述性文本,HTML命令可以说明文字、图形、动画、声音、表格、链接等。CSS类型文件是文本格式的文件,其作为一种与HTML语言配合使用制作网页的文件。ICO类型文件是一种图标文件格式,ICO图标可以作为浏览器首段图标显示。
在本说明书实施例中,第一摘要值、第二摘要值、第三摘要值及第四摘要值的选择可以为64bit,128bit,256bit,512bit,1024bit等,优选为128bit。
在本说明书实施例中,所述资源类型对应的权重的计算公式为:
其中,
指
i类型资源的权重;
i为资源类型;
count i指
i类型资源的数量;
指所有资源类型的数量;
为
i类型资源的类型权重,当
i属于{JS\HTML\CSS\ICO}时,为固定值;
。
例如,当资源的类型包括JS、HTML、CSS、ICO时,则为4。
在本说明书实施例中,预设比特数的选择可以根据具体业务场景而定,具体而言,预设比特数可以为8bit、16bit、32bit等,优选为32bit。在本说明书的又一个实施例中,第一摘要值与预设比特数的比值至少为4,相应的,第二摘要值与预设比特数的比值至少为4,第三摘要值与预设比特数的比值至少为4,第四摘要值与预设比特数的比值至少为4。
在本说明书实施例中,所述采用文本相似度算法,对所述赋权后的词表进行相似度比较,生成所述待处理的web应用的特征编码,具体包括:对所述赋权后的词表,通过simhash算法生成所述待处理的web应用的特征编码。
simhash算法是一种网页去重的hash算法,通过该方法,能够将赋权后的词表进行去重,从而生成待处理的web应用的特征编码。在具体实施例中,待处理的web应用的特征编码的长度与第一摘要值、第二摘要值、第三摘要值、第四摘要值的长度是相同的,在本说明书中,待处理的web应用的特征编码的长度优选为128bit。
步骤S105:基于预设的搜索模糊度,在预设数据库中,利用所述待处理的web应用特征编码进行搜索,获得所述待处理的web应用的相似web应用;
其中,
所述预设数据库为特征编码与web应用的关联关系的集合。
搜索模糊度指搜索结果和搜索关键词匹配程度之间的波动范围,关键词和结果之间的模糊度超过配置模糊度的则视为不匹配。比如关键字和结果之间匹配如:abcdef匹配abcdef,abcde, adcdef, aecdff....不匹配acd, asssss, zxcvasdasd。对于与abcdef匹配的abcdef,abcde, adcdef, aecdff,模糊度分别为0,1,1,2。
在本说明书实施例中,所述预设的搜索模糊度为不大于3的数值,所述基于预设的搜索模糊度,在预设数据库中,利用所述待处理的web应用特征编码进行搜索,获得所述待处理的web应用的相似web应用,具体包括:
当所述预设的搜索模糊度为0时,从所述预设数据库中搜索与所述待处理的web应用的特征编码相同的web应用,作为所述待处理的web应用的相似web应用;
和/或
当所述预设的搜索模糊度大于0时,基于所述待处理的web应用的子特征编码,从所述预设数据库中搜索与所述待处理的web应用的子特征编码相同的特征编码集合,所述待处理的web应用的子特征编码是基于所述待处理的web应用的特征编码分割获得的;
遍历所述特征编码集合,根据所述特征编码集合中的特征编码与所述待处理的web应用的特征编码之间的海明距离,确定所述待处理的web应用的相似web应用。
需要说明的是,搜索模糊度大于3时,代表不匹配。
在本说明书实施例中,所述待处理的web应用的子特征编码,具体包括:
以所述预设比特数为单位,对所述待处理的web应用的特征编码进行分割,获得所述待处理的web应用的子特征编码。
在本说明书实施例中,所述遍历所述特征编码集合,根据所述特征编码集合中的特征编码与所述待处理的web应用的特征编码之间的海明距离,确定所述待处理的web应用的相似web应用,具体包括:
遍历所述特征编码,获得所述特征编码集合中的特征编码与所述待处理的web应用的特征编码之间的海明距离小于等于所述预设的搜索模糊度的目标特征编码;
将所述目标特征编码对应的web应用,作为所述待处理的web应用的相似web应用。
海明距离是指在信息编码中,两个合法代码对应位上编码不同的位数称为码距,又称海明距离。举例如下:10101和00110从第一位开始依次有第一位、第四、第五位不同,则海明距离为3。
为了进一步理解本说明书实施例提供的相似web应用的搜索,下面将结合具体的实施例予以说明。
基于前述步骤,获得待处理的web应用的特征编码WID_1;
将特征编码以32bit为单位进行分割,分成4段子编码,记为wid_1_sub_1,wid_1_sub_2,wid_1_sub_3,wid_1_sub_4;
配置搜索模糊度N,N满足N<=3,对不同的模糊度N有不同的搜索处理方式:
N=0时:在数据库中WID和Web应用的关联关系中,搜索所有特征编号等于WID_1的Web应用,作为结果返回;
N>0时:在数据库中WID与子编号的关联关系中,分别搜索得到所有子编号等于wid_1_sub_1、wid_1_sub_2、wid_1_sub_3、wid_1_sub_4的WID集合。遍历集合中的所有WID,与WID_1计算海明距离,筛选得到所有距离小于等于N的WID,作为结果返回。
需要特别说明的是,当N=0时,其时间复杂度为O(1),当N>0时,其时间复杂度为O(n)。时间复杂度,又称时间复杂性,算法的时间复杂度是一个函数,它定性描述该算法的运行时间。这是一个代表算法输入值的字符串的长度的函数。时间复杂度常用大O符号表述,不包括这个函数的低阶项和首项系数。使用这种方式时,时间复杂度可被称为是渐近的,亦即考察输入值大小趋近无穷时的情况。
在本说明书实施例中,所述预设数据库包括:
建立任一web应用与所述任一web应用的特征编码之间的第一关联关系,所述任一web应用为web应用集合中的任一web应用;
以所述预设比特数为单位,对所述任一web应用的特征编码进行分割,获得所述任一web应用的子编码;
将所述任一web应用的子编码与所述任一web应用的特征编码建立第二关联关系;
将所述第一关联关系与所述第二关联关系,作为所述预设数据库。
为了进一步理解预设数据库,下面将结合具体的实施例予以说明。
将一Web应用记为WA,其特征编号记为WID,在数据库中建立web应用与特征编码的关联关系,使用WID列作为索引列。
将特征编号以32位bit为单位进行分割,分成4段子编号,记为wid_sub_1, wid_sub_2, wid_sub_3, wid_sub_4。
分别将4个子编号与特征编号在对应的WID数据库中建立数据关联关系。4个子编号间接与Web应用建立了关联关系,使用子编号列作为索引列。
前述获得的web应用与特征编码的关联关系,以及子编码与特征编码的关联关系,均是通过特征编码建立的关系,将web应用与特征编码的关联关系,子编码与特征编码的关系关系作为预设数据库。
为了进一步理解本说明书实施例提供的搜索方法,下面将结合具体的实施例予以说明。以使用不同配置、填入不同内容的以Wordpress应用框架架构的3个Web应用站点和一个使用其他框架的Web应用站点为例:
首先,对三个Wordpress应用站点和其他Web应用站点分别进行下列步骤,最终得到特征编号RID_1, RID_2,RID_3,RID_4:
a. 访问站点并跟随重定向,解析站点的响应(Response),记为R。
b. 使用模型内置正则匹配规则对R匹配出所有静态资源的链接,并记录默认路径/favicon.ico作为不保存在R中的站点图标链接。依次获取这些静态资源,记为{SR}。
c. 根据模型中对资源优先级的定义对静态资源链接排序,根据资源类型和公式分别计算对应的权重,记为{WR}。
d. 依次分别处理不同类型的资源,获取资源对应的特征值,记为{HR},与{SR}一一对应:
e. 将特征值{HR}和权重{WR}一一对应,根据模型定义的特征编号生成方法,生成此站点的静态资源特征编号,记为RID。
f.将RID与对应的Web应用站点根据模型存储方法存储进数据库。
其次,通过比较,可以判断出Wordpress应用框架架构的3个Web应用站点的特征编号RID_1,RID_2,RID_3相互之间的汉明距离均小于等于3。而三者分别与RID_4之间的汉明距离均大于3。
最后,使用模型的特征编号搜索方法,可分别使用编号RID_1、RID_2或RID_3检索出三个Wordpress应用框架站点。而使用RID_4编号只能检索出使用其他框架Web应用站点。
在如下假设场景中:假设本次检测资产为4个Web应用站点。其中3个应用站点使用同一框架但填入不同的内容,且1个为引入较多JavaScript组件的应用站点。第4个应用站点为使用其他Web框架构建的Web应用站点。
采用本说明书实施例提供的方法,传统的网页文本相似性比较方案,只对Web应用首页的静态返回内容进行比对,无法判断3个使用同一框架的应用站点为相似应用站点,无法确认4个Web应用站点之间的关系;使用动态渲染页面节点的相似性比较方案,可以判断2个使用同一应用框架的应用站点为相似站点,并且可以根据其中一个站点的特征检索到另一站点,但无法将引入较多JavaScript组件的应用站点判断为与两者相似的相似站点,第4个应用站点判断为无关站点;而应用本发明的成果进行检测和搜索,在处理速度低于动态渲染页面节点方案的同时,可以准确判断3个使用同一框架的应用站点互相为相似站点,判断第4个应用站点为无关站点,根据特征编号可以准确且快速的搜索出相似应用。
整体来看,提升了相似性判断的准确率,提高了相似站点搜索的效率。
采用本说明书实施例提供的搜索方法,能够提高web应用的相似性比较的准确度及搜索速度,实现相似web应用的快速、准确的搜索。
本说明书实施例提供了一种web应用的搜索方法,基于同样的思路,本说明书实施例提供一种web应用的搜索装置。图2为本说明书实施例提供的一种web应用的搜索装置的示意图,如图2所示,该搜索装置包括:
获取模块201,获取待处理的web应用所在站点的静态资源;
分割模块203,以预设比特数为单位,对所述静态资源对应的摘要值进行分割,生成所述待处理的web应用的特征编码;
搜索模块205,基于预设的搜索模糊度,在预设数据库中,利用所述待处理的web应用特征编码进行搜索,获得所述待处理的web应用的相似web应用;
其中,
所述预设数据库为特征编码与web应用的关联关系的集合。
在本说明书实施例中,所述以预设比特数为单位,对所述静态资源对应的摘要值进行分割,生成所述待处理的web应用的特征编码,具体包括:
过滤所述静态资源,获得过滤后的静态资源;
按照资源类型的优先级,以所述预设比特数为单位,对所述过滤后的静态资源对应的摘要值进行分割,获得所述过滤后的静态资源对应的词表;
根据所述资源类型对应的权重,对所述词表进行赋权,获得赋权后的词表;
采用文本相似度算法,对所述赋权后的词表进行相似度比较,生成所述待处理的web应用的特征编码。
在本说明书实施例中,所述资源类型包括:JS类型文件,HTML类型文件,CSS类型文件、ICO类型文件中的一种或几种,所述资源类型的优先级顺序依次为:JS类型文件,HTML类型文件,CSS类型文件、ICO类型文件;
所述过滤后的静态资源对应的摘要值包括第一摘要值、第二摘要值、第三摘要值、第四摘要值中的至少一个;
其中:
根据所述资源类型的优先级,使用分割符号列表,对所述过滤后的静态资源中的JS类型文件的内容进行分割,形成第一词表;使用正则匹配算法,对所述过滤后的静态资源中的HTML类型文件的标签及属性值进行匹配,形成第二词表;使用正则匹配算法,对所述过滤后的静态资源中的CSS类型文件的css tag进行匹配,形成第三词表;
使用无权值的simhash算法分别计算所述第一词表的第一摘要值,获得所述第一摘要值;
使用无权值的simhash算法分别计算所述第二词表的第二摘要值,获得所述第二摘要值;
使用无权值的simhash算法分别计算所述第三词表的三摘要值,获得所述第三摘要值;
使用md5算法,计算所述过滤后的静态资源中的ICO类型文件的摘要值,获得所述第四摘要值。
在本说明书实施例中,所述资源类型对应的权重的计算公式为:
其中,
指
i类型资源的权重;
i为资源类型;
count i指
i类型资源的数量;
指所有资源类型的数量;
为
i类型资源的类型权重,当
i属于{JS\HTML\CSS\ICO}时,为固定值;
。
在本说明书实施例中,所述预设的搜索模糊度为不大于3的数值,所述基于预设的搜索模糊度,在预设数据库中,利用所述待处理的web应用特征编码进行搜索,获得所述待处理的web应用的相似web应用,具体包括:
当所述预设的搜索模糊度为0时,从所述预设数据库中搜索与所述待处理的web应用的特征编码相同的web应用,作为所述待处理的web应用的相似web应用果;
和/或
当所述预设的搜索模糊度大于0时,基于所述待处理的web应用的子特征编码从所述预设数据库中搜索与所述待处理的web应用的子特征编码相同的特征编码集合,所述待处理的web应用的子特征编码是基于所述待处理的web应用的特征编码分割获得的;
遍历所述特征编码集合,根据所述特征编码集合中的特征编码与所述待处理的web应用的特征编码之间的海明距离,确定所述待处理的web应用的相似web应用。
在本说明书实施例中,所述待处理的web应用的子特征编码,具体包括:
以所述预设比特数为单位,对所述待处理的web应用的特征编码进行分割,获得所述待处理的web应用的子特征编码。
在本说明书实施例中,所述遍历所述特征编码集合,根据所述特征编码集合中的特征编码与所述待处理的web应用的特征编码之间的海明距离,确定所述待处理的web应用的相似web应用,具体包括:
遍历所述特征编码,获得所述特征编码集合中的特征编码与所述待处理的web应用的特征编码之间的海明距离小于等于所述预设的搜索模糊度的目标特征编码;
将所述目标特征编码对应的web应用,作为所述待处理的web应用的相似web应用。
在本说明书实施例中,所述预设数据库包括:
建立任一web应用与所述任一web应用的特征编码之间的第一关联关系,所述任一web应用为web应用集合中的任一web应用;
以所述预设比特数为单位,对所述任一web应用的特征编码进行分割,获得所述任一web应用的子编码;
将所述任一web应用的子编码与所述任一web应用的特征编码建立第二关联关系;
将所述第一关联关系与所述第二关联关系,作为所述预设数据库。
本说明书实施例还提供一种电子设备,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
获取待处理的web应用所在站点的静态资源;
以预设比特数为单位,对所述静态资源对应的摘要值进行分割,生成所述待处理的web应用的特征编码;
基于预设的搜索模糊度,在预设数据库中,利用所述待处理的web应用特征编码进行搜索,获得所述待处理的web应用的相似web应用;
其中,
所述预设数据库为特征编码与web应用的关联关系的集合。
在本说明书实施例中,所述以预设比特数为单位,对所述静态资源对应的摘要值进行分割,生成所述待处理的web应用的特征编码,具体包括:
过滤所述静态资源,获得过滤后的静态资源;
按照资源类型的优先级,以所述预设比特数为单位,对所述过滤后的静态资源对应的摘要值进行分割,获得所述过滤后的静态资源对应的词表;
根据所述资源类型对应的权重,对所述词表进行赋权,获得赋权后的词表;
采用文本相似度算法,对所述赋权后的词表进行相似度比较,生成所述待处理的web应用的特征编码。
在本说明书实施例中,所述资源类型包括:JS类型文件,HTML类型文件,CSS类型文件、ICO类型文件中的一种或几种,所述资源类型的优先级顺序依次为:JS类型文件,HTML类型文件,CSS类型文件、ICO类型文件;
所述过滤后的静态资源对应的摘要值包括第一摘要值、第二摘要值、第三摘要值、第四摘要值中的至少一个;
其中:
根据所述资源类型的优先级,使用分割符号列表,对所述过滤后的静态资源中的JS类型文件的内容进行分割,形成第一词表;使用正则匹配算法,对所述过滤后的静态资源中的HTML类型文件的标签及属性值进行匹配,形成第二词表;使用正则匹配算法,对所述过滤后的静态资源中的CSS类型文件的css tag进行匹配,形成第三词表;
使用无权值的simhash算法分别计算所述第一词表的第一摘要值,获得所述第一摘要值;
使用无权值的simhash算法分别计算所述第二词表的第二摘要值,获得所述第二摘要值;
使用无权值的simhash算法分别计算所述第三词表的三摘要值,获得所述第三摘要值;
使用md5算法,计算所述过滤后的静态资源中的ICO类型文件的摘要值,获得所述第四摘要值。
在本说明书实施例中,所述资源类型对应的权重的计算公式为:
其中,
指
i类型资源的权重;
i为资源类型;
count i指
i类型资源的数量;
指所有资源类型的数量;
为
i类型资源的类型权重,当
i属于{JS\HTML\CSS\ICO}时,为固定值;
。
在本说明书实施例中,所述预设的搜索模糊度为不大于3的数值,所述基于预设的搜索模糊度,在预设数据库中,利用所述待处理的web应用特征编码进行搜索,获得所述待处理的web应用的相似web应用,具体包括:
当所述预设的搜索模糊度为0时,从所述预设数据库中搜索与所述待处理的web应用的特征编码相同的web应用,作为所述待处理的web应用的相似web应用果;
和/或
当所述预设的搜索模糊度大于0时,基于所述待处理的web应用的子特征编码从所述预设数据库中搜索与所述待处理的web应用的子特征编码相同的特征编码集合,所述待处理的web应用的子特征编码是基于所述待处理的web应用的特征编码分割获得的;
遍历所述特征编码集合,根据所述特征编码集合中的特征编码与所述待处理的web应用的特征编码之间的海明距离,确定所述待处理的web应用的相似web应用。
在本说明书实施例中,所述待处理的web应用的子特征编码,具体包括:
以所述预设比特数为单位,对所述待处理的web应用的特征编码进行分割,获得所述待处理的web应用的子特征编码。
在本说明书实施例中,所述遍历所述特征编码集合,根据所述特征编码集合中的特征编码与所述待处理的web应用的特征编码之间的海明距离,确定所述待处理的web应用的相似web应用,具体包括:
遍历所述特征编码,获得所述特征编码集合中的特征编码与所述待处理的web应用的特征编码之间的海明距离小于等于所述预设的搜索模糊度的目标特征编码;
将所述目标特征编码对应的web应用,作为所述待处理的web应用的相似web应用。
在本说明书实施例中,所述预设数据库包括:
建立任一web应用与所述任一web应用的特征编码之间的第一关联关系,所述任一web应用为web应用集合中的任一web应用;
以所述预设比特数为单位,对所述任一web应用的特征编码进行分割,获得所述任一web应用的子编码;
将所述任一web应用的子编码与所述任一web应用的特征编码建立第二关联关系;
将所述第一关联关系与所述第二关联关系,作为所述预设数据库。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (10)
1.一种web应用的搜索方法,其特征在于,所述搜索方法包括:
获取待处理的web应用所在站点的静态资源;
以预设比特数为单位,对所述静态资源对应的摘要值进行分割,生成所述待处理的web应用的特征编码;
基于预设的搜索模糊度,在预设数据库中,利用所述待处理的web应用特征编码进行搜索,获得所述待处理的web应用的相似web应用;
其中,
所述预设数据库为特征编码与web应用的关联关系的集合;
所述以预设比特数为单位,对所述静态资源对应的摘要值进行分割,生成所述待处理的web应用的特征编码,具体包括:
过滤所述静态资源,获得过滤后的静态资源;
按照资源类型的优先级,以所述预设比特数为单位,对所述过滤后的静态资源对应的摘要值进行分割,获得所述过滤后的静态资源对应的词表;
资源类型包括:JS类型文件,HTML类型文件,CSS类型文件、ICO类型文件中的一种或几种,所述资源类型的优先级顺序依次为:JS类型文件,HTML类型文件,CSS类型文件、ICO类型文件;
所述过滤后的静态资源对应的摘要值包括第一摘要值、第二摘要值、第三摘要值、第四摘要值中的至少一个;
其中:
根据所述资源类型的优先级,使用分割符号列表,对所述过滤后的静态资源中的JS类型文件的内容进行分割,形成第一词表;使用正则匹配算法,对所述过滤后的静态资源中的HTML类型文件的标签及属性值进行匹配,形成第二词表;使用正则匹配算法,对所述过滤后的静态资源中的CSS类型文件的css tag进行匹配,形成第三词表。
2.如权利要求1所述的搜索方法,其特征在于,所述以预设比特数为单位,对所述静态资源对应的摘要值进行分割,生成所述待处理的web应用的特征编码,还包括:
根据所述资源类型对应的权重,对所述词表进行赋权,获得赋权后的词表;
采用文本相似度算法,对所述赋权后的词表进行相似度比较,生成所述待处理的web应用的特征编码。
3.如权利要求1所述的搜索方法,其特征在于,所述方法还包括;
使用无权值的simhash算法分别计算所述第一词表的第一摘要值,获得所述第一摘要值;
使用无权值的simhash算法分别计算所述第二词表的第二摘要值,获得所述第二摘要值;
使用无权值的simhash算法分别计算所述第三词表的三摘要值,获得所述第三摘要值;
使用md5算法,计算所述过滤后的静态资源中的ICO类型文件的摘要值,获得所述第四摘要值。
4.如权利要求2所述的搜索方法,其特征在于,所述资源类型对应的权重的计算公式为:
其中,
指i类型资源的权重;
i为资源类型;
count i指i类型资源的数量;
指所有资源类型的数量;
为i类型资源的类型权重,当i属于{JS\HTML\CSS\ICO}时,为固定值;
为所有资源的数量。
5.如权利要求1所述的搜索方法,其特征在于,所述预设的搜索模糊度为不大于3的数值,所述基于预设的搜索模糊度,在预设数据库中,利用所述待处理的web应用特征编码进行搜索,获得所述待处理的web应用的相似web应用,具体包括:
当所述预设的搜索模糊度为0时,从所述预设数据库中搜索与所述待处理的web应用的特征编码相同的web应用,作为所述待处理的web应用的相似web应用;
和/或
当所述预设的搜索模糊度大于0时,基于所述待处理的web应用的子特征编码,从所述预设数据库中搜索与所述待处理的web应用的子特征编码相同的特征编码集合,所述待处理的web应用的子特征编码是基于所述待处理的web应用的特征编码分割获得的;
遍历所述特征编码集合,根据所述特征编码集合中的特征编码与所述待处理的web应用的特征编码之间的海明距离,确定所述待处理的web应用的相似web应用。
6.如权利要求5所述的搜索方法,其特征在于,所述待处理的web应用的子特征编码,具体包括:
以所述预设比特数为单位,对所述待处理的web应用的特征编码进行分割,获得所述待处理的web应用的子特征编码。
7.如权利要求5所述的搜索方法,其特征在于,所述遍历所述特征编码集合,根据所述特征编码集合中的特征编码与所述待处理的web应用的特征编码之间的海明距离,确定所述待处理的web应用的相似web应用,具体包括:
遍历所述特征编码,获得所述特征编码集合中的特征编码与所述待处理的web应用的特征编码之间的海明距离小于等于所述预设的搜索模糊度的目标特征编码;
将所述目标特征编码对应的web应用,作为所述待处理的web应用的相似web应用。
8.如权利要求1所述的搜索方法,其特征在于,所述预设数据库包括:
建立任一web应用与所述任一web应用的特征编码之间的第一关联关系,所述任一web应用为web应用集合中的任一web应用;
以所述预设比特数为单位,对所述任一web应用的特征编码进行分割,获得所述任一web应用的子编码;
将所述任一web应用的子编码与所述任一web应用的特征编码建立第二关联关系;
将所述第一关联关系与所述第二关联关系,作为所述预设数据库。
9.一种web应用的搜索装置,其特征在于,所述搜索装置包括:
获取模块,获取待处理的web应用所在站点的静态资源;
分割模块,以预设比特数为单位,对所述静态资源对应的摘要值进行分割,生成所述待处理的web应用的特征编码;
搜索模块,基于预设的搜索模糊度,在预设数据库中,利用所述待处理的web应用特征编码进行搜索,获得所述待处理的web应用的相似web应用;
其中,
所述预设数据库为特征编码与web应用的关联关系的集合;
所述分割模块,具体包括:
过滤所述静态资源,获得过滤后的静态资源;
按照资源类型的优先级,以所述预设比特数为单位,对所述过滤后的静态资源对应的摘要值进行分割,获得所述过滤后的静态资源对应的词表;
资源类型包括:JS类型文件,HTML类型文件,CSS类型文件、ICO类型文件中的一种或几种,所述资源类型的优先级顺序依次为:JS类型文件,HTML类型文件,CSS类型文件、ICO类型文件;
所述过滤后的静态资源对应的摘要值包括第一摘要值、第二摘要值、第三摘要值、第四摘要值中的至少一个;
其中:
根据所述资源类型的优先级,使用分割符号列表,对所述过滤后的静态资源中的JS类型文件的内容进行分割,形成第一词表;使用正则匹配算法,对所述过滤后的静态资源中的HTML类型文件的标签及属性值进行匹配,形成第二词表;使用正则匹配算法,对所述过滤后的静态资源中的CSS类型文件的css tag进行匹配,形成第三词表。
10.一种电子设备,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
获取待处理的web应用所在站点的静态资源;
以预设比特数为单位,对所述静态资源对应的摘要值进行分割,生成所述待处理的web应用的特征编码;
基于预设的搜索模糊度,在预设数据库中,利用所述待处理的web应用特征编码进行搜索,获得所述待处理的web应用的相似web应用;
其中,
所述预设数据库为特征编码与web应用的关联关系的集合;
所述以预设比特数为单位,对所述静态资源对应的摘要值进行分割,生成所述待处理的web应用的特征编码,具体包括:
过滤所述静态资源,获得过滤后的静态资源;
按照资源类型的优先级,以所述预设比特数为单位,对所述过滤后的静态资源对应的摘要值进行分割,获得所述过滤后的静态资源对应的词表;
资源类型包括:JS类型文件,HTML类型文件,CSS类型文件、ICO类型文件中的一种或几种,所述资源类型的优先级顺序依次为:JS类型文件,HTML类型文件,CSS类型文件、ICO类型文件;
所述过滤后的静态资源对应的摘要值包括第一摘要值、第二摘要值、第三摘要值、第四摘要值中的至少一个;
其中:
根据所述资源类型的优先级,使用分割符号列表,对所述过滤后的静态资源中的JS类型文件的内容进行分割,形成第一词表;使用正则匹配算法,对所述过滤后的静态资源中的HTML类型文件的标签及属性值进行匹配,形成第二词表;使用正则匹配算法,对所述过滤后的静态资源中的CSS类型文件的css tag进行匹配,形成第三词表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211712588.4A CN115687736B (zh) | 2022-12-30 | 2022-12-30 | 一种web应用的搜索方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211712588.4A CN115687736B (zh) | 2022-12-30 | 2022-12-30 | 一种web应用的搜索方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115687736A CN115687736A (zh) | 2023-02-03 |
CN115687736B true CN115687736B (zh) | 2023-04-14 |
Family
ID=85055979
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211712588.4A Active CN115687736B (zh) | 2022-12-30 | 2022-12-30 | 一种web应用的搜索方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115687736B (zh) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017049045A1 (en) * | 2015-09-16 | 2017-03-23 | RiskIQ, Inc. | Using hash signatures of dom objects to identify website similarity |
CN109710834B (zh) * | 2018-11-16 | 2020-01-10 | 北京字节跳动网络技术有限公司 | 相似网页检测方法、装置、存储介质及电子设备 |
CN110390044B (zh) * | 2019-06-11 | 2024-03-19 | 平安科技(深圳)有限公司 | 一种相似网络页面的搜索方法及设备 |
CN111949916B (zh) * | 2020-08-20 | 2024-04-09 | 深信服科技股份有限公司 | 一种网页分析方法、装置、设备及存储介质 |
CN112307303A (zh) * | 2020-10-29 | 2021-02-02 | 扆亮海 | 基于云计算的网络页面高效精准去重系统 |
CN113609246B (zh) * | 2021-08-04 | 2024-04-12 | 奇安盘古(上海)信息技术有限公司 | 一种网页相似性检测方法及系统 |
-
2022
- 2022-12-30 CN CN202211712588.4A patent/CN115687736B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115687736A (zh) | 2023-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6901816B2 (ja) | エンティティ関係データ生成方法、装置、機器、及び記憶媒体 | |
WO2020259260A1 (zh) | 一种结构化查询语言sql注入检测方法及装置 | |
US11769003B2 (en) | Web element rediscovery system and method | |
US7941420B2 (en) | Method for organizing structurally similar web pages from a web site | |
US20090089278A1 (en) | Techniques for keyword extraction from urls using statistical analysis | |
US8799310B2 (en) | Method and system for processing a uniform resource locator | |
US9734149B2 (en) | Clustering repetitive structure of asynchronous web application content | |
JP2010501096A (ja) | ラッパー生成およびテンプレート検出の協同最適化 | |
US20090248707A1 (en) | Site-specific information-type detection methods and systems | |
CN109684584B (zh) | 一种浏览器内核的智能切换方法、装置、终端及存储介质 | |
US20100211533A1 (en) | Extracting structured data from web forums | |
US20090083266A1 (en) | Techniques for tokenizing urls | |
CN104361115A (zh) | 一种基于共同点击的词条权重确定方法及装置 | |
CN114363019B (zh) | 钓鱼网站检测模型的训练方法、装置、设备及存储介质 | |
CN105022824A (zh) | 无效链接的识别方法和装置 | |
CN105740370B (zh) | 一种在线Web新闻内容抽取系统 | |
CN114817811B (zh) | 一种网站解析方法和装置 | |
US20090204889A1 (en) | Adaptive sampling of web pages for extraction | |
Xu et al. | DivLog: Log Parsing with Prompt Enhanced In-Context Learning | |
EP3422177A1 (en) | Systems and methods for code parsing and lineage detection | |
CN115687736B (zh) | 一种web应用的搜索方法、装置及电子设备 | |
CN115062206B (zh) | 一种网页元素的搜索方法和电子设备 | |
US9195940B2 (en) | Jabba-type override for correcting or improving output of a model | |
CN113806667B (zh) | 一种支持网页分类的方法和系统 | |
CN111949916B (zh) | 一种网页分析方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |