CN106407485B - 一种基于相似度比较的url去重方法和系统 - Google Patents

一种基于相似度比较的url去重方法和系统 Download PDF

Info

Publication number
CN106407485B
CN106407485B CN201611182696.XA CN201611182696A CN106407485B CN 106407485 B CN106407485 B CN 106407485B CN 201611182696 A CN201611182696 A CN 201611182696A CN 106407485 B CN106407485 B CN 106407485B
Authority
CN
China
Prior art keywords
url
features
feature
bloom filter
module
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
Application number
CN201611182696.XA
Other languages
English (en)
Other versions
CN106407485A (zh
Inventor
林子忠
欧伟
茅晓萍
谢嘉铮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
FUJIAN LIUREN NETWORK SECURITY Co Ltd
Original Assignee
FUJIAN LIUREN NETWORK SECURITY Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by FUJIAN LIUREN NETWORK SECURITY Co Ltd filed Critical FUJIAN LIUREN NETWORK SECURITY Co Ltd
Priority to CN201611182696.XA priority Critical patent/CN106407485B/zh
Publication of CN106407485A publication Critical patent/CN106407485A/zh
Application granted granted Critical
Publication of CN106407485B publication Critical patent/CN106407485B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9566URL specific, e.g. using aliases, detecting broken or misspelled links

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明的一种基于相似度比较的URL去重方法和系统,通过导入URL并提取URL的特征,将URL特征与布隆过滤器进行比对,如果查询到布隆过滤器中存储有该URL特征对应的特征,则过滤该URL,所述URL特征包括一种以上的特征,代替了现有技术中的哈希函数,可以匹配更准确的URL网页数据。通过相似度比较并过滤可以快速、准确解决网页页面重复或相似的重复爬行或扫描工作,可以提高爬虫以及扫描的有效性和效率。

Description

一种基于相似度比较的URL去重方法和系统
技术领域
本发明涉及一种网络信息排序技术,具体地说涉及一种基于相似度比较的URL去重方法和系统。
背景技术
随着互联网信息爆炸式增长,每一天互联网中的数据都呈现几何式的堆加。用户需要的信息往往会淹没于大量无关信息中,利用搜索引擎获取感兴趣的信息已经成为人们获取信息较为便捷的方式。作为搜索引擎的基础构件之一的网络爬虫,需要从互联网上搜集信息,为用户提供数据来源。搜索结果是否丰富、获得的信息是否没有重合,均与网络爬虫的效率紧密相关。海量的数据对网络爬虫的设计与实现提出了更高的要求,构建分布式网络爬虫系统是一个有效的解决方案。相应地,作为网络爬虫核心关键技术的URL(统一资源定位符)排重方法对爬虫系统的性能影响尤为重要。
目前已有的URL去重方法主要有基于内存的去重和基于数据库的去重。在基于内存的URL去重方式中,爬虫将系统URL全部放在内存中,并使用一个易于查找的数据结构(如哈希表)进行维护,由于哈希函数仅是将任意长度的二进制值映射为固定长度的较小二进制的一个简单换算,而URL所包含网页内容较多时,仅凭哈希值可能有较大误差。
发明内容
为此,本发明所要解决的技术问题在于现有技术中采用哈希函数的布隆过滤器去重存在较大误差,去重效率低。
为解决上述技术问题,本发明所采用的技术方案:
一种基于相似度比较的URL去重方法,包含以下步骤:
S1:导入URL;
S2:提取URL所包含的URL特征,所述URL特征包含URL站点特征;
S3:将提取到的URL特征查询布隆过滤器,所述布隆过滤器的特征类型与所述URL特征的类型对应;
S4:将提取到的URL特征与布隆过滤器中存储的特征进行比对,查询是否有相似特征,若有,则进行S5步骤;若无,则进行S6步骤;
S5:查询到相似的特征,将所述URL过滤;
S6:未查询到相似的特征,将所述特征存储到布隆过滤器。
所述URL特征还包含URL目录深度特征。
所述URL特征还包含URL一级目录特征。
所述URL特征还包含URL尾页特征。
步骤S4中将提取到的URL特征分别做换算操作,得到其在布隆过滤器中对应的bit位信息,查询布隆过滤器中对应类型的特征的bit位信息,若二者均为1,则认为二者为相似特征。
一种基于相似度比较的URL去重系统,包含以下模块:
接收模块:导入URL;
提取模块:提取URL所包含的URL特征,所述URL特征包含URL站点特征;
布隆过滤器模块:将提取到的URL特征查询布隆过滤器,所述布隆过滤器的特征类型与所述URL特征的类型对应;
特征比对模块:将提取到的URL特征与布隆过滤器中存储的特征进行比对,查询是否有相似特征,若有,则转入过滤模块;若无,则转入更新模块;
过滤模块:查询到相似的特征,将所述URL过滤;
更新模块:未查询到相似的特征,将所述特征存储到布隆过滤器。
所述URL特征还包含URL目录深度特征。
所述URL特征还包含URL一级目录特征。
所述URL特征还包含URL尾页特征。
特征比对模块将提取到的URL特征分别做换算操作,得到其在布隆过滤器中对应的bit位信息,查询布隆过滤器中对应类型的特征的bit位信息,若二者均为1,则认为二者为相似特征。
本发明的上述技术方案相比现有技术具有以下优点。
本发明的一种基于相似度比较的URL去重方法和系统,通过导入URL并提取URL的特征,将URL特征与布隆过滤器进行比对,如果查询到布隆过滤器中存储有该URL特征对应的特征,则过滤该URL,所述URL特征包括一种以上的特征,代替了现有技术中的哈希函数,可以匹配更准确的URL网页数据。通过相似度比较并过滤可以快速、准确解决网页页面重复或相似的重复爬行或扫描工作,可以提高爬虫以及扫描的有效性和效率。
附图说明
为了使本发明的内容更容易被清楚的理解,下面根据本发明的具体实施例并结合附图,对本发明作进一步详细的说明,其中,
图1为本发明一种基于相似度比较的URL去重方法的流程图;
图2为本发明一种基于相似度比较的URL去重系统的结构框图。
图中附图标记表示为:1-接收模块;2-提取模块;3-布隆过滤器模块;4-特征比对模块;5-过滤模块;6-更新模块。
具体实施方式
一种基于相似度比较的URL去重方法,包含以下步骤:
S1:导入URL。建立存放URL的数据库URL_DB,一条记录即以字符串方式存放的URL,其格式为:url=u1/u2/u3/…/un,n≥1。
S2:提取URL所包含的URL特征,所述URL特征包含URL站点特征。提取URL中的站点字符节u1。用MD5算法分别计算该URL的各个字符节的特征值。即输入站点字符节u1,输出URL站点特征值m1每个特征值为128位唯一的二进制数字。
S3:将提取到的URL特征查询布隆过滤器,所述布隆过滤器的特征类型与所述URL特征的类型对应。将URL特征的特征值,如m1做模N操作,得到其在布隆过滤器中对应的bit位信息。所述布隆过滤器在内存建立。针对采集URL数量的不同,在保证冲突率的基础上,确定布隆过滤器和模N的大小,用于URL排重的布隆过滤器构建如下:
(1)通过数据规模及期望的误判率计算所需的内存大小:
用户输入需要排重的URL的数据量k,以及期望的误判率P,这也是构建布隆过滤器需要用户输入的仅有的两个参数。通过公式计算所需内存的大小Mbit:
(2)根据M值确定模N操作的N值大小:
N=2128/M
S4:将提取到的URL特征与布隆过滤器中存储的特征进行比对,例如将m1做模N操作,得到其在布隆过滤器中对应的bit位信息,并查询布隆过滤器中站点特征值对应的bit位,两者bit位的值是否均为1,若是则认为是具有相似特征。查询是否有相似特征,若有,则进行S5步骤;若无,则进行S6步骤。
S5:查询到相似的特征,则认为该URL已经在数据库URL_DB中,将所述URL过滤。
S6:未查询到相似的特征,即若有任意一个URL特征的值为0;则认为URL_DB中不存在该URL,将其存入URL_DB中,并将布隆过滤器中对应的bit位置为1。将所述URL特征存储到布隆过滤器。
所述URL特征还包含URL目录深度特征,值为n。
所述URL特征还包含URL一级目录特征,值为m2。
所述URL特征还包含URL尾页特征,值为mn。
步骤S4中将提取到的URL特征(n、m1、m2、mn)分别做换算(模N)操作,得到其在布隆过滤器中对应的bit位信息,查询布隆过滤器中对应类型的特征的bit位信息,若二者均为1,则认为二者为相似特征,认为该URL已经在数据库URL_DB中,将其废弃。若有任一URL特征的值为0,则认为URL_DB中不存在该URL,将其存入URL_DB中,并将布隆过滤器中对应的4个bit位信息为1。还可以定义和增加更多的URL特征,并在方法的实现中选择使用其中的特征来识别URL。
本发明所述的一种基于相似度比较的URL去重方法结合了URL的结构特征及传统布隆过滤器的结构特征,提取URL具有代表性的多个特征属性,通过这些属性来代表相似的URL,并用这些不同的特征计算出特征值来映射布隆过滤器中的对应位,代替了布隆过滤器中所需的多个哈希函数。
一种基于相似度比较的URL去重系统,如图2所示,包含以下模块:
接收模块1:导入URL。建立存放URL的数据库URL_DB,一条记录即以字符串方式存放的URL,其格式为:url=u1/u2/u3/…/un,n≥1。
提取模块2:提取URL所包含的URL特征,所述URL特征包含URL站点特征。提取URL中的站点字符节u1。用MD5算法分别计算该URL的各个字符节的特征值。即输入站点字符节u1,输出URL站点特征值m1每个特征值为128位唯一的二进制数字。
布隆过滤器模块3:将提取到的URL特征查询布隆过滤器,所述布隆过滤器的特征类型与所述URL特征的类型对应。将URL特征的特征值,如m1做模N操作,得到其在布隆过滤器中对应的bit位信息。所述布隆过滤器在内存建立。针对采集URL数量的不同,在保证冲突率的基础上,确定布隆过滤器和模N的大小,用于URL排重的布隆过滤器构建如下:
(1)通过数据规模及期望的误判率计算所需的内存大小:
用户输入需要排重的URL的数据量k,以及期望的误判率P,这也是构建布隆过滤器需要用户输入的仅有的两个参数。通过公式计算所需内存的大小Mbit:
(2)根据M值确定模N操作的N值大小:
N=2128/M
特征比对模块4:将提取到的URL特征与布隆过滤器中存储的特征进行比对,例如将m1做模N操作,得到其在布隆过滤器中对应的bit位信息,并查询布隆过滤器中站点特征值对应的bit位,两者bit位的值是否均为1,若是则认为是具有相似特征。查询是否有相似特征,若有,则转入过滤模块;若无,则转入更新模块。
过滤模块5:查询到相似的特征,则认为该URL已经在数据库URL_DB中,将所述URL过滤。
更新模块6:未查询到相似的特征,即若有任意一个URL特征的值为0;则认为URL_DB中不存在该URL,将其存入URL_DB中,并将布隆过滤器中对应的bit位置为1。将所述URL特征存储到布隆过滤器。
所述URL特征还包含URL目录深度特征,值为n。
所述URL特征还包含URL一级目录特征,值为m2。
所述URL特征还包含URL尾页特征,值为mn。
特征比对模块4将提取到的URL特征(n、m1、m2、mn)分别做换算(模N)操作,得到其在布隆过滤器中对应的bit位信息,查询布隆过滤器中对应类型的特征的bit位信息,若二者均为1,则认为二者为相似特征,认为该URL已经在数据库URL_DB中,将其废弃。若有任一URL特征的值为0,则认为URL_DB中不存在该URL,将其存入URL_DB中,并将布隆过滤器中对应的4个bit位信息为1。还可以定义和增加更多的URL特征,并在方法的实现中选择使用其中的特征来识别URL。
本发明所述的一种基于相似度比较的URL去重系统结合了URL的结构特征及传统布隆过滤器的结构特征,提取URL具有代表性的多个特征属性,通过这些属性来代表相似的URL,并用这些不同的特征计算出特征值来映射布隆过滤器中的对应位,代替了布隆过滤器中所需的多个哈希函数。
本发明的一种基于相似度比较的URL去重方法和系统,通过导入URL并提取URL的特征,将URL特征与布隆过滤器进行比对,如果查询到布隆过滤器中存储有该URL特征对应的特征,则过滤该URL,所述URL特征包括一种以上的特征,代替了现有技术中的哈希函数,可以匹配更准确的URL网页数据。通过相似度比较并过滤可以快速、准确解决网页页面重复或相似的重复爬行或扫描工作,可以提高爬虫以及扫描的有效性和效率。
显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。

Claims (2)

1.一种基于相似度比较的URL去重方法,其特征在于,包含以下步骤:
S1:导入URL;
S2:提取URL所包含的URL特征,所述URL特征包含URL站点特征;
S3:将提取到的URL特征查询布隆过滤器,所述布隆过滤器的特征类型与所述URL特征的类型对应;
S4:将提取到的URL特征与布隆过滤器中存储的特征进行比对,查询是否有相似特征,若有,则进行S5步骤;若无,则进行S6步骤;
S5:查询到相似的特征,将所述URL过滤;
S6:未查询到相似的特征,将所述特征存储到布隆过滤器;
所述URL特征还包含URL目录深度特征、URL一级目录特征、URL尾页特征;
步骤S4中将提取到的URL特征分别做换算操作,得到其在布隆过滤器中对应的bit位信息,查询布隆过滤器中对应类型的特征的bit位信息,若二者均为1,则认为二者为相似特征。
2.一种基于相似度比较的URL去重系统,其特征在于,包含以下模块:
接收模块:导入URL;
提取模块:提取URL所包含的URL特征,所述URL特征包含URL站点特征;
布隆过滤器模块:将提取到的URL特征查询布隆过滤器,所述布隆过滤器的特征类型与所述URL特征的类型对应;
特征比对模块:将提取到的URL特征与布隆过滤器中存储的特征进行比对,查询是否有相似特征,若有,则转入过滤模块;若无,则转入更新模块;
过滤模块:查询到相似的特征,将所述URL过滤;
更新模块:未查询到相似的特征,将所述特征存储到布隆过滤器;
所述URL特征还包含URL目录深度特征、URL一级目录特征、URL尾页特征;
特征比对模块将提取到的URL特征分别做换算操作,得到其在布隆过滤器中对应的bit位信息,查询布隆过滤器中对应类型的特征的bit位信息,若二者均为1,则认为二者为相似特征。
CN201611182696.XA 2016-12-20 2016-12-20 一种基于相似度比较的url去重方法和系统 Active CN106407485B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611182696.XA CN106407485B (zh) 2016-12-20 2016-12-20 一种基于相似度比较的url去重方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611182696.XA CN106407485B (zh) 2016-12-20 2016-12-20 一种基于相似度比较的url去重方法和系统

Publications (2)

Publication Number Publication Date
CN106407485A CN106407485A (zh) 2017-02-15
CN106407485B true CN106407485B (zh) 2017-12-26

Family

ID=58087396

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611182696.XA Active CN106407485B (zh) 2016-12-20 2016-12-20 一种基于相似度比较的url去重方法和系统

Country Status (1)

Country Link
CN (1) CN106407485B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107329969A (zh) * 2017-05-23 2017-11-07 合肥智权信息科技有限公司 一种基于多次校验的数据信息更新系统和方法
CN109271408B (zh) 2018-08-31 2020-07-28 阿里巴巴集团控股有限公司 一种分布式数据连接处理方法、装置、设备及存储介质
CN111209458A (zh) * 2018-11-22 2020-05-29 顺丰科技有限公司 一种网络爬虫的数据处理系统及方法
CN110399546B (zh) * 2019-07-23 2022-02-08 中南民族大学 基于网络爬虫的链接去重方法、装置、设备及存储介质
CN110825947B (zh) * 2019-10-31 2024-03-08 深圳前海微众银行股份有限公司 Url去重方法、装置、设备与计算机可读存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102880726A (zh) * 2012-10-23 2013-01-16 深圳市宜搜科技发展有限公司 一种图像过滤方法及系统
CN105956068A (zh) * 2016-04-27 2016-09-21 湖南蚁坊软件有限公司 基于分布式数据库的网页url去重方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9569522B2 (en) * 2014-06-04 2017-02-14 International Business Machines Corporation Classifying uniform resource locators

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102880726A (zh) * 2012-10-23 2013-01-16 深圳市宜搜科技发展有限公司 一种图像过滤方法及系统
CN105956068A (zh) * 2016-04-27 2016-09-21 湖南蚁坊软件有限公司 基于分布式数据库的网页url去重方法

Also Published As

Publication number Publication date
CN106407485A (zh) 2017-02-15

Similar Documents

Publication Publication Date Title
CN106407485B (zh) 一种基于相似度比较的url去重方法和系统
CN102110132B (zh) 统一资源定位符匹配查找方法、装置和网络侧设备
CN105718590A (zh) 面向多租户的SaaS舆情监控系统及方法
CN110245470A (zh) 智能数据脱敏方法、装置、计算机设备和存储介质
CN107145496A (zh) 基于关键词将图像与内容项目匹配的方法
CN101727464B (zh) 获取别称匹配对的方法及装置
CN101727502A (zh) 一种数据查询方法及装置、系统
CN107463591A (zh) 响应于搜索查询对待与内容匹配的图像动态排序的方法和系统
Embley et al. Big data—conceptual modeling to the rescue
CN103123649A (zh) 一种基于微博平台的消息搜索方法及系统
CN103984757B (zh) 在搜索结果页上插入新闻信息条目的方法和系统
CN104536984B (zh) 一种外包数据库中的空间文本Top‑k查询的验证方法及系统
CN105302876A (zh) 基于正则表达式的url过滤方法
CN103218443A (zh) 一种面向博客网页的网页检索系统及方法
CN106372073A (zh) 一种数学公式检索方法与装置
CN108171071A (zh) 一种面向云计算的多关键字可排序密文检索方法
RU2015124047A (ru) Улучшение поиска людей с использованием изображений
CN106570140A (zh) 确定信息热点的方法及装置
CN107145497A (zh) 基于图像和内容的元数据选择与内容匹配的图像的方法
CN103440249A (zh) 一种非结构化数据快速检索的系统及方法
CN105528421B (zh) 一种针对海量数据中查询词的搜索维度挖掘方法
Chuang et al. Effective web crawling for chinese addresses and associated information
CN104021120B (zh) 一种导航数据检索方法、装置及导航终端
CN104717078A (zh) 基于配置的数据归并方法
CN110413724A (zh) 一种数据检索方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant