CN109948019A - 一种深层网络数据获取方法 - Google Patents
一种深层网络数据获取方法 Download PDFInfo
- Publication number
- CN109948019A CN109948019A CN201910023321.6A CN201910023321A CN109948019A CN 109948019 A CN109948019 A CN 109948019A CN 201910023321 A CN201910023321 A CN 201910023321A CN 109948019 A CN109948019 A CN 109948019A
- Authority
- CN
- China
- Prior art keywords
- keyword
- document
- word
- network data
- layer network
- 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.)
- Granted
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种深层网络数据获取方法,通过将基于增量方法和基于采样方法相融合,在最小化时间成本的前提下,解决深网数据爬取问题。本发明首先,随机发送查询词至目标数据源D,从中获取一定数量的文档,组成文档样本集d;然后从文档样本集d中获取所有词并进行筛选,组成关键词集合Q;接着基于贪心算法从所述关键词集合Q中选出满足一定条件的备选关键词,组成候选关键词集合Qj;最后通过格点搜索法,等间隔c地从所述候选关键词集合Qj中选取爬取关键词进行文档爬取操作,直到关键词整体质量达到最大,进行下一次迭代,并重复上述步骤,直至满足停止条件为止。
Description
技术领域
本发明涉及信息检索技术领域,具体涉及一种深层网络数据获取方法。
背景技术
在过去的几十年,互联网上的数据每年都在以指数形式增长,并且这些数据大多储存于深网数据库中,只能通过搜索接口获取。目前,爬取深网数据库的数据引起了学术界和工业界的广泛关注,然而研究人员和从业人员更多地关注爬虫的数据覆盖率问题,而忽略数据爬取的效率。随着网络环境的改善,人们对信息的及时性要求越来越高,因此数据爬取的效率问题就显得至关重要。
随着可搜索网页表单和可编程网页API在各种Web应用编程上的广泛应用,隐藏在搜索接口后的数据迅速增加,且该数据只能通过关键访问,形成所谓的深网(Deep Web)或隐藏网(Hidden Web)。由于深网数据库数据体量庞大,很多应用欲通过获取相应数据构建分布式搜索引擎[1]、数据整合系统[2,3]、垂直门户[4]等。因此,如何获取深网数据成为学术界和工业界研究的热门问题。
数据爬取是获取深网数据的主要手段之一,其基本思路为选取一系列关键词,获取目标数据源文档的超链接,然后下载相应文档。关键优化是数据爬取的关键问题,即以最小的成本从数据源爬取更多的文档,且由于网络带宽对下载文档的效率影响很大,因此最主要的成本定义是网络带宽成本。在过去几年中,对深网爬取的要求也在发生着变化,一是网络环境的改变,网络带宽得到了显著增加,网络带宽时间明显降低;二是几乎所有网站都会有搜索接口获取深网数据,有些还提供可编程的网络API接口,如twitter.com和Amazon.com等网站;三是人们对于爬取数据的及时性和全面性要求越来越高;四是一些特殊的应用要求很高的爬取吞吐量,如一些全国规模的数据集成系统等。这些变化要求深网爬取能够从深网数据库中更加快速地收集更加全面的信息。基于此,本文主要研究如何在满足爬虫覆盖率的前提下,提高数据爬取效率。
现有的数据爬取策略可以分为两大类:基于增量的方法和基于采样的方法。对于基于增量的方法,其主要思想为从已下载的文档中迭代地选取关键词,并且随着所发送关键词数量的增加,下载的文档数也相应增加。具体的,该方法通过下载并分析先前关键词返回文档,选取下一关键词。该做法虽然可以获取较高覆盖率,但也会导致效率底下。与基于增量的方法相比,基于采样的方法主要采用重要性采样方法[5],迭代地从所有关键词中选取所有关键词,这样有助于提高爬取效率,但是由于受到样本数量限制,很难达到较高的爬取覆盖率[6,7]。
对于基于增量型的方法,每次迭代选取能够返回更多文档的最优关键词,且返回比率用λ表示,λ越大,表示关键词质量越高。Ntoulas et al.[8]最先提出用Zipf-law评估方法在每次迭代过程中,通过预测各关键词的返回比率λ选择最优关键词。在此基础上,后续学者对预测算法进行了相应改进,使得预测更加准确,从而降低关键词提交次数,提高爬取效率。对于关键词的选择,不同学者提出不同选取策略,文献[9,10,11,12]则通过应用机器学习算法,通过结合文献[8]的排序信息和其他特征信息,如:语义信息、统计特征信息和HTML格式特征信息等,对各候选关键词进行评估,选择最优关键词。
基于采样的方法最初由Barbosa et al.提出[13],该类型方法可以分为样本集获取和迭代产生关键词集两个步骤。在第一步中,首先通过随机发送一些关键词到目标数据源,获取一定数量的样本集;在第二步中,根据候选关键词的词频等信息,获得关键词集,并发送至目标数据源,并重复执行第二步,直到下载的文档达到一定覆盖率要求为止。在此思想的基础上,后续学者在关键词选择策略上进行了相应改进,文献[6]将样本集视为原始文档集的缩影,通过对各词在样本集的一些统计信息,估计该词在原始数据源的真实分布,从而选择能够返回较多文档的关键词提交至目标数据源。而文献[14]则提出应用IDS(逆文档大小)集合覆盖算法进行关键词选择,而后,文献[15]充分考虑了词频和词项大小两方面因素,对每个词项进行综合评价,最终选出最优关键词集。
上述两种方法上述两类数据爬取方法的基本原理不同,各有其优势特点,但是各自的弊端,基于增量的方法在消耗带宽的前提下,以计算时间为代价,每次发送最优关键词,实现相应爬取覆盖率,该类方法虽然能够获得较高关键覆盖率,但是效率却较低。而基于采样的方法,其主要思想为从随机小样本获取的高质量的关键词,且通过提交关键词可以获取目标数据源的大部分数据文档。该类方法虽然能够高效的爬取数据,但是其爬取的数据量有限,很难实现较高的覆盖率。
[1]Ipeirotis,P.G.,Gravano,L.:Distributed search over the hidden web:Hierarchical database sampling and selection.In:VLDB(2002)
[2]Dong,X.L.,Srivastava,D.:Big data integration.In:ICDE,pp.1245–1248(2013)[3]Song,S.,Chen,L.:Indexing dataspaces with partitions.World Wide Web16(2),141–170(2013)
[4]Yang,M.,H.Wang,L.L.,Wang,M.:Optimizing content freshness ofrelations extracted from the web using keyword search.In:Proc.of SIGMOND,pp.819–830(2010)
[5]Bar-Yossef,Z.,Gurevich,M.:Random sampling from a search engine’sindex.In:WWW,pp.367–376(2006)
[6]Lu,J.,Wang,Y.,liang,J.,Chen,J.,Liu,J.:An approach to deep webcrawling by sampling.In:Proc.of Web Intelligence,pp.718–724(2008)
[7]Wang,Y.,Lu,J.,Liang,J.,Chen,J.,Liu,J.:Selecting queries fromsample to crawl deep web data sources.Web Intelligence and Agent Systems 10(1),75–88(2012)
[8]A.Ntoulas,P.Zerfos,J.Cho:Downloading textual hidden web contentthrough keyword queries.In:Proc.of JCDL,100-109(2005)
[9]Jiang,L.,Wu,Z.,Zheng,Q.,Liu,J.:Learning deep web crawling withdiverse featueres.In:WI-IAT,pp.572–575(2009)
[10]Dong,Y.,Li,Q.:A deep web crawling approach based on query harvestmodel.Journal of Computational Information System 8(3),973–981(2012)
[11]Jiang,L.,Wu,Z.,Feng,Q.,Liu,J.,Zheng,Q.:Efficient deep webcrawling using reinforcement learning.In:Proc.of PAKDD,pp.428–439(2010)
[12]Zheng,Q.,Wu,Z.,Cheng,X.,Jiang,L.,Liu,J.:Learning to crawl deepweb.Information Systems 38(6),801–819(2013)
[13]Barbosa,M.L.,Freire,J.:Siphoning hidden-web data through keyword-based interfaces.In:Proc.of SBBD(2004)
[14]Y.Wang,J.Lu,J.Chen:Crawling deep web using a new set coveringalgorithm.In:Proc.of ADMA,pp.326–337(2009)
[15]Wang,Y.,Lu,J.,Chen,J.:Ts-ids algorithm for query selection in thedeep web crawling.In:ApWeb,pp.189–200(2014)
发明内容
有鉴于此,本发明提供了一种深层网络数据获取方法,通过将基于增量方法和基于采样方法相融合,在最小化时间成本的前提下,解决深网数据爬取问题。
一种深层网络数据获取方法,首先,随机发送关键词至目标数据源D,从中获取一定数量的文档,组成文档样本集d;然后从文档样本集d中获取所有词并进行筛选,组成关键词集合Q;接着基于贪心算法从所述关键词集合Q中选出满足一定条件的备选关键词,组成候选关键词集合Q’;最后通过格点搜索法,等间隔地从所述候选关键词集合Q’中选取爬取关键词进行文档爬取操作,直到关键词整体质量达到最大,进行下一次迭代,并重复上述步骤,直至满足停止条件为止。
进一步地,所述从中获取一定数量的文档组成文档样本集d采用以下方式:从韦伯斯特字典中随机选取关键词q0,发送关键词到目标数据源D进行关键,获得关键返回结果;下载各url链接地址对应的文档;针对下载的各文档,组成文档样本集。
进一步地,如果url链接地址对应的文档为PDF文档,则用java PDFbox包将文档数据中的正文部分转换成数据流,保存在text文档中;如果url链接地址对应网页数据,则使用java HTMLunit包,对网页数据进行解析,只保留其中的文字部分,将所有的标签数据和其他数据全部抛弃;最终组成文档样本集。
进一步地,所述从文档样本集d中获取所有词并进行筛选,组成关键词集合Q,然后基于贪心算法在集合Q中选出满足一定条件的备选关键词,组成候选关键词集合Q’,具体包括以下步骤:
(1)对所述文档样本集中的文档内容进行分词处理,提取所有文档中包含的词,并从中剔除已经作为关键词提交的词,接着统计剩下的词在样本集中的文档频率,选择文档频率在2%-15%之间的词组成关键词集合Q;
(2)构建词项-文档矩阵M,该矩阵每一行代表集合Q中的每一个词,每一列代表一个文档,矩阵中元素有两个取值0或者1,Mi,j=1表示第i个词在第j篇文档中出现,Mi,j=0表示第i个词未在第j篇文档中出现;
(3)在矩阵M基础上采用贪心算法,选择候选关键词集Q’;
(4)从候选关键词集Q’中按顺序循环提交c个关键词,并根据所提交关键词整体质量,确定提交关键词数量n;
(5)重复上述(2)、(3)、(4)步骤,直到所下载文档数量占数据源文档数量99%为止。
进一步的,所述对文档内容进行分词处理时,如果文档是英文,使用Lucene分词器进行分词,如果文档是中文,则使用结巴分词器进行分词。
进一步的,在所述步骤(3)中,在选择候选关键词集之前针对在关键词集合Q中而不在候选关键词集Q’中的词进行评估,对于词qi,计算其质量其中newqi表示关键词能够返回的新文档数,dfqi表示词qi出现的文档数,即返回文档中不在ds中的文档数,其中ds为已下载文档集。
进一步的,在所述步骤4中,评估当前已发送关键词的整体质量,其中,关键词质量与该词返回的新文档数new成正比,与该关键词发送、文档解析、关键词选择算法所消耗的总时间T成反比,具体公式为new/T,其中T包括关键词发送时间Ts,文档解析时间Tr,以及关键词选择算法时间Tc,即T=Ts+Tr+Tc。
进一步的,所述步骤4中,所述根据所提交关键词整体质量,确定提交关键词数量n,具体采用以下方式:计算当前提交关键词的整体质量qual(Q′,n),其中newj表示第j个关键词所返回的新文档数,ts()表示第j个关键词发送时间,tr()表示第j个关键词文档解析时间,Tc表示关键词选择算法时间,N为候选关键词集中关键词总数;选择整体质量最大时的n。
本发明的有益效果:
本发明主要针对爬取深网数据源数据的效率问题进行改进,结合基于增量的方法和基于采样的方法的好处,采用贪心算法,即每次选择能够返回新文档数量最多的词作为下一关键词,且在已被证明的结论的基础上,通过每次迭代过程选择合适数量的关键词,最小化每轮迭代的时间消耗,从而实现给定的爬取文档覆盖率,提高爬取效率,降低时间消耗,进而降低企业数据获取成本。且经过详实的实验证明,在网络响应时间很小的情况下,本发明方法在数据获取效率上远远优于其他基于增量的方法和基于样本的方法。
具体实施方式
下面举实施例对本发明进行详细描述。
本发明提供一种高效的深网数据爬取策略,结合基于采样和基于增量的原理,主要包括初始样本集获取、基于贪心算法的候选关键词选择、格点搜索法选择最优关键词数量、发送关键词并获取返回文档,重复上述步骤,直至所下载文档满足一定覆盖率为止。
本发明方法的具体思路如下:首先,随机发送关键词至目标数据源D,从中获取一定数量的文档,组成文档样本集d;然后,从文档样本集d中获取所有词并进行筛选,组成关键词集合Q;接着,基于贪心算法,选出满足一定条件的备选关键词组成候选关键词集合Q’;最后通过格点搜索法,等间隔c地从Q’中选取爬取关键词进行文档爬取操作,直到关键词整体质量达到最大,进行下一次迭代,并重复上述步骤,直至满足停止条件为止。
本发明具体步骤如下:
步骤一:随机选取一定数量文档组成初始样本文档集;
由于本发明方法是将基于增量和基于样本思想结合,需先从目标数据库获取一定数量文档,组成样本文档集。对于隐藏网数据库,无法直接获取文档,只能通过发送关键词的方法获取隐藏网数据库文档,具体做法如下:
步骤1.1,随机选取一个关键词,该关键词可以是从词典中选取,如:从韦伯斯特词典中随机;也可以是从一些文档集中获得,如从网上下载一些文档,然后进行分词等操作得到其中的词作为关键词;或者是从维基百科等网站,获取相关内容,抽取其中的词作为关键词;或者其他方法。
步骤1.2,发送步骤1.1选取的关键词到目标数据库,获取返回结果。这时获取的一般是搜索结果页,需要相应的网页解析代码,获得每个返回结果对应的url链接地址,并存入数据库中。由于返回结果可能很多条,不能够在同一页中显示,所以还会涉及到如何分页爬取相应链接,都一并存入数据库中;
步骤1.3,使用文档下载器下载各url链接地址对应的网页或者文档。在下载过程中,如果url链接地址对应的文档为PDF文档,需要用java PDFbox包将文档数据中的正文部分转换成数据流,保存在text文档中;如果url链接地址对应网页数据,则使用javaHTMLunit包,对网页数据进行解析,只保留其中的文字部分,将所有的标签数据和其他数据全部抛弃;对于其他形式的文档也是一样,只保留其中文字部分并转换成数据流存入对应的text文档,最终组成文档样本集D。
步骤二:建立候选关键词集Q’
在该步骤中,主要目的是从样本文档集中,抽取关键词,并通过对关键词进行质量评估,选择一定数量词构建候选关键词集Q’,具体做法如下:
(1)对步骤一中获得的所有文档进行处理,对文档内容进行分词处理,如果文档是英文,使用Lucene分词器进行分词,而对于中文内容,则使用结巴分词器进行分词,从而提取所有文档中包含的词,并从中剔除已经作为关键词提交的词,接着统计剩下的词在样本集中的文档频率,选择文档频率在2%-15%之间的词组成关键词集合Q(|Q|=N);
(2)接着,构建词项-文档矩阵M,该矩阵每一行代表集合Q中的每一个词,每一列代表一个文档,矩阵中元素有两个取值0或者1,Mi,j=1表示第i个词在第j篇文档中出现,否则Mi,j=0表示第i个词未在第j篇文档中出现。
(3)在矩阵M的基础上,采用贪心算法,选择出一系列高质量关键词,对关键词质量的定义参考文献[17]。具体的,在评估关键词质量过程中,先以当前样本文档集为目标库d,且对于关键词q,主要从其能够返回的新文档数及其自身文档频率两个角度评估其质量,具体计算公式为以当前样本文档集为爬取目标,选择集合Q中文档频率最大的词作为第一个候选关键词q1,下载的新文档数与q1的文档频率相同,其质量qualq1=1,并将q1加入候选文档集Q’。此时,已下载文档集ds为包含q1的所有文档,即此项-文档矩阵中第q1行取值为1的文档
(4)接下来,继续选择关键词,对在Q中而不在(Q’)中的词进行评估,对于词qi,计算其质量其中newqi表示关键词能够返回的新文档数,即返回文档中不在ds中的文档数,选择qual值最高的词加入候选关键词集Q’中,并将其返回的新文档加入ds中。重复上述过程,直到ds中文档数量占d中文档数量99%为止。
(5)基于贪心算法思想,上述过程每次迭代选取当前质量最高的词加入候选词集合Q’,因此Q’中关键词的质量顺序与加入次序相同,即先加入的质量优于后加入的词的质量。
步骤三:格点搜索法选取最佳关键词提交数量
经过步骤一和步骤二,选取出一系列的候选关键词,虽然返回文档数与提交关键词数量成正比例关系,但每次提交关键词会产生一定的时间消耗,导致时间成本的上升,因此需对所提交关键词的整体质量进行评估,对于提交关键词集合Q′的整体质量计算公式如下:
其中n表示使用关键词集合Q′中的前n个词,Tc表示在步骤二中为选出候选词集合所造成的消耗,经推导,Tc=α×n×m,其中,α为常数,n代表关键词集合Q中的词数量,m代表词项-文档矩阵中的文档数量。ts(Q’)表示第j个关键词发送时间,tr(Q’)表示第j个关键词超链接检索时间。
整体质量计算公式的提出,目的是为了找到关键词集合Q′中整体质量最高的前n个词。经实验,在完美情况下,即关键词集合Q′的关键词按质量非升序排列时,关键词集合Q′的整体质量qual(Q′,n)相对于n是一个凸函数;而在真实情况下,即使该函数具有一定波动,但其整体趋势仍然近似于凸函数。
结合整体质量计算公式,为求出最优值n,格点搜索法定义如下:
(1)在关键词集合Q′中,计算当前位置i的整体质量quali
(2)根据格点搜索法预定义的格点长度c,分别计算i+1至i+c的整体质量
(3)从quali到quali+s中,求出最大质量的下标i′max
(4)当qualimax<quali′max,回到(1),否则算法退出,n=imax。
步骤四:获取隐藏网数据库数据
经过步骤一、二、三的操作,已经完成了爬取关键词的选取工作,并在选择的过程中已经获取相关文档链接地址,接着,将所有链接地址输入到下载器中,下载相应文档,加入样本文档集d中,继续执行步骤一、二、三,直到样本文档集数量占目标数据源数量一定比例p为止。
通过以上四个步骤,本发明通过设计爬取策略,提高了对于深网数据爬取的效率,在较低时间消耗的要求下,完成较高的爬取覆盖率。进一步,对于企业来说,降低企业数据获取成本。
为了证明本发明方法的有效性,在四个标准的测试集上做了相应对比实验,具体实验细节如下:
实验中使用的数据集是使用最为广泛的四个数据集,分别是:Reuters,Gov,CiteSeer和Sogou,数据集的特征如表1所示:
表1测试集汇总
从表中可以看出四个数据集所包含文档数、数据集大小、平均文档大小以及所包含词项总数等信息。其中,Reuters是TREC发布的一个数据集,包含英文新闻共806,790篇;Gov是Gov2的一个子集,包含了1000,000篇文档。Gov2是TREC在2004年从所有域名在.gov下的网站中搜集的数据集,包含2,500,000篇文档,为了提高效率,本算例只使用了他的子集。Citeseer是2015年CiteSeer网站提供的Amazon Web services下载的数据集,主要用于学术研究,包含471,732篇完整的文档。Sogou数据集是由清华大学搜狗实验室收集的521,054篇中文网页。
在实验过程中,本发明方法通过使用Lucene[8]在本地服务器构建搜索引擎,模拟真实深网数据库场景,这样方便计算爬取覆盖率,同时也便于评估关键词发送时间等信息。由于爬取算法的拓展性问题,在实验中对每个数据集进行了剔除出现次数很少的词和停用词处理,只保留了文档频率在1%-15%之间的词。
事实上,由于操作系统的时间共享,获取爬取算法的时间消耗较为困难,因此,本发明算法在实验过程中模拟网络通信和计算的时间消耗,并做进行如下参数设置:
-平均接收时间:对于每一个返回的超链接,平均接收时间用α表示,取值范围为10-4s~10-2s,如:α=10-2s,即接收1,000个超链接所用时间为10s(通常每个结果页包含10个结果,1000个超链接需要100个结果页,平均处理每个结果页的时间为0.1s)。
-平均发送时间:提交单个关键词q的平均时间用ts(q)表示,且其值一般为平均接收时间的10倍,即ts(q)=10*α。
-平均修订时间:对于本发明方法和基于采样的方法来说,在每次迭代过程中需要构造词项-文档矩阵,且消耗的时间与矩阵大小有关。用β1表示处理矩阵单个元素所消耗时间,则平均修订时间为β1*|S|*|T|,其中S表示样本文档集大小,T表示样本文档集所包含词项数;对于基于增量的方法来说,只需维护和更新每个词项的文档余量表,其单位修订时间为β2*|T|,其中β2表示操作每个列表所用时间。
为了验证本发明方法在数据爬取方面的有效性,共进行了两组实验。
其一,将本方法自身在不同参数设置下进行对比,选取最优参数。
对于本发明方法自身来说,第三步格点搜索法中的格点距离c是个可调参数,并且c的值对最终爬取效率存在一定的影响。因此,我们通过一组对比实验,验证在c取不同值时,对于四个数据集的爬取效率的影响,其中要求的爬取覆盖率为95%。
对于四个数据集,分别对比了c=1、c=3、c=5和c=10四种取值情况下的效果。其中每个点代表依次关键词的选择,α=1×10-5s,ts(q)=1×10-4s,β1=1×10-5s。其中初始关键词均从随机韦伯斯特词典50,000个词中随机选择。
在c的四种取值的情况下,本方法在各个数据集中都达到了95%的爬取覆盖率。同时可以很容易地发现,当c=1时,本算法在Reuters和Wiki中的表现与在另外两个数据集中的表现明显地存在着差异。差异的原因在于,当贪心算法选出的词序列能正确地反映其在原始数据集中的特征时,较低的c显然提高了算法的精度;而当词序列不能较好地反映真实特征的情况下,较高的c则能更好地克服误差。
同时,调节平均接收时间α一定程度上反映网络的设置,在不同c取值情况,调节平均接收时间α对最终实验结果也有一定影响。
从实验结果可以看出c取值越大,爬取效率越高,并且随着α值的增加,达到相同爬取覆盖率的情况下,爬取迭代次数也随之增加。
其二,是将本发明方法与现有的两种方法:基于采样的方法和基于增量的方法进行对比。
我们将本发明方法的参数设置为前一组实验中选取出的最优参数,对比方法的参数同样设置为不影响爬取效果的前提下的最优值。并有如下发现:
-对于基于增量的爬取算法,为了达到爬取总量的95%的目标,在4个实验数据集上,该算法性能最差,消耗了大量的时间。通过实验分析我们看出,在传统的增量爬取的过程中,每一轮发送更多的关键关键词意味着会消耗更多的时间。
-对于基于采样的爬取算法,首先,由于初始样本的限制,改方法无法取得很高的爬取目标(例如大于总量的95%)。虽然初始样本在爬取效率方面能够达到较优效果,但是,即使在极其短的网络响应时间的前提下,获取一个足够大小的随机初始样本(例如大于等于3000个随机文档)依旧会让我们付出较大的时间代价。
-与上述的两大算法相比,本发明方法在各方面上均实现了较好的优化。在能够达到与基于增量的算法一样的高覆盖率的前提下,本方法消耗了相对更少的爬取代价(例如时间)。与此同时,在爬取效率上,本方法具备与基于采样的算法比肩的能力,甚至Reuters和CiteSeer这样的数据集上我们的算法对其实现了超越。
Claims (8)
1.一种深层网络数据获取方法,其特征在于,首先,随机发送关键词至目标数据源D,从中获取一定数量的文档,组成文档样本集d;然后从文档样本集d中获取所有词并进行筛选,组成关键词集合Q;接着基于贪心算法从所述关键词集合Q中选出满足一定条件的备选关键词,组成候选关键词集合Q’;最后通过格点搜索法,等间隔地从所述候选关键词集合Q’中选取爬取关键词进行文档爬取操作,直到关键词整体质量达到最大,进行下一次迭代,并重复上述步骤,直至满足停止条件为止。
2.如权利要求1所述的一种深层网络数据获取方法,其特征在于,所述从中获取一定数量的文档组成文档样本集d采用以下方式:从韦伯斯特字典中随机选取关键词q0,发送关键词到目标数据源D进行关键,获得关键返回结果;下载各url链接地址对应的文档;针对下载的各文档,组成文档样本集。
3.如权利要求2所述的一种深层网络数据获取方法,其特征在于,如果url链接地址对应的文档为PDF文档,则用java PDFbox包将文档数据中的正文部分转换成数据流,保存在text文档中;如果url链接地址对应网页数据,则使用java HTMLunit包,对网页数据进行解析,只保留其中的文字部分,将所有的标签数据和其他数据全部抛弃;最终组成文档样本集。
4.如权利要求1或2或3所述的一种深层网络数据获取方法,其特征在于,所述从文档样本集d中获取所有词并进行筛选,组成关键词集合Q,然后基于贪心算法在集合Q中选出满足一定条件的备选关键词,组成候选关键词集合Q’,具体包括以下步骤:
(1)对所述文档样本集中的文档内容进行分词处理,提取所有文档中包含的词,并从中剔除已经作为关键词提交的词,接着统计剩下的词在样本集中的文档频率,选择文档频率在2%-15%之间的词组成关键词集合Q;
(2)构建词项-文档矩阵M,该矩阵每一行代表集合Q中的每一个词,每一列代表一个文档,矩阵中元素有两个取值0或者1,Mi,j=1表示第i个词在第j篇文档中出现,Mi,j=0表示第i个词未在第j篇文档中出现;
(3)在矩阵M基础上采用贪心算法,选择候选关键词集Q’;
(4)从候选关键词集Q’中按顺序循环提交c个关键词,并根据所提交关键词整体质量,确定提交关键词数量n;
(5)重复上述(2)、(3)、(4)步骤,直到所下载文档数量占数据源文档数量99%为止。
5.如权利要求4所述的一种深层网络数据获取方法,其特征在于,所述对文档内容进行分词处理时,如果文档是英文,使用Lucene分词器进行分词,如果文档是中文,则使用结巴分词器进行分词。
6.如权利要求4或5所述的一种深层网络数据获取方法,其特征在于,在所述步骤(3)中,在选择候选关键词集之前针对在关键词集合Q中而不在候选关键词集Q’中的词进行评估,对于词qi,计算其质量其中newqi表示关键词能够返回的新文档数,dfqi表示词qi出现的文档数,即返回文档中不在ds中的文档数,其中ds为已下载文档集。
7.如权利要求4或5所述的一种深层网络数据获取方法,其特征在于,在所述步骤(4)中,所述关键词整体质量与该词返回的新文档数new成正比,与该关键词发送、文档解析、关键词选择算法所消耗的总时间T成反比,具体公式为new/T,其中T包括关键词发送时间Ts,文档解析时间Tr,以及关键词选择算法时间Tc,即T=Ts+Tr+Tc。
8.如权利要求4或5所述的一种深层网络数据获取方法,其特征在于,所述步骤(4)中,所述根据所提交关键词整体质量,确定提交关键词数量n,具体采用以下方式:计算当前提交关键词的整体质量qual(Q′,n),其中newj表示第j个关键词所返回的新文档数,ts()表示第j个关键词发送时间,tr()表示第j个关键词文档解析时间,Tc表示关键词选择算法时间,N为候选关键词集中关键词总数,选择整体质量最大时的n。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910023321.6A CN109948019B (zh) | 2019-01-10 | 2019-01-10 | 一种深层网络数据获取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910023321.6A CN109948019B (zh) | 2019-01-10 | 2019-01-10 | 一种深层网络数据获取方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109948019A true CN109948019A (zh) | 2019-06-28 |
CN109948019B CN109948019B (zh) | 2021-10-08 |
Family
ID=67007200
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910023321.6A Active CN109948019B (zh) | 2019-01-10 | 2019-01-10 | 一种深层网络数据获取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109948019B (zh) |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101004760A (zh) * | 2007-01-10 | 2007-07-25 | 苏州大学 | 基于视觉特征的页面查询接口抽取方法 |
US20080040326A1 (en) * | 2006-08-14 | 2008-02-14 | International Business Machines Corporation | Method and apparatus for organizing data sources |
CN101419625A (zh) * | 2008-12-02 | 2009-04-29 | 西安交通大学 | 一种基于最小可查询模式的Deep Web自适应爬取方法 |
CN101840432A (zh) * | 2010-05-11 | 2010-09-22 | 同方知网(北京)技术有限公司 | 一种基于Deep Web深层动态数据的数据挖掘装置及方法 |
CN101916272A (zh) * | 2010-08-10 | 2010-12-15 | 南京信息工程大学 | 用于深层网数据集成的数据源选择方法 |
CN103116635A (zh) * | 2013-02-07 | 2013-05-22 | 中国科学院计算技术研究所 | 面向领域的暗网资源采集方法和系统 |
CN103927392A (zh) * | 2014-05-04 | 2014-07-16 | 苏州大学 | 一种深层网络数据源异常点的检测方法及系统 |
CN106126705A (zh) * | 2016-07-01 | 2016-11-16 | 武汉泰迪智慧科技有限公司 | 一种大规模网络数据实时爬取系统 |
US20170061029A1 (en) * | 2011-06-17 | 2017-03-02 | Microsoft Technology Licensing, Llc | Interactive web crawler |
CN107193962A (zh) * | 2017-05-24 | 2017-09-22 | 百度在线网络技术(北京)有限公司 | 一种互联网推广信息的智能配图方法及装置 |
CN107944019A (zh) * | 2017-12-11 | 2018-04-20 | 中广在线(北京)文化传媒有限公司 | 一种基于爬虫技术的境外舆情监测装置、系统及方法 |
CN108090200A (zh) * | 2017-12-22 | 2018-05-29 | 中央财经大学 | 一种排序型隐藏网数据库数据的获取方法 |
CN108710672A (zh) * | 2018-05-17 | 2018-10-26 | 南京大学 | 一种基于增量贝叶斯算法的主题爬虫方法 |
CN109033200A (zh) * | 2018-06-29 | 2018-12-18 | 北京百度网讯科技有限公司 | 事件抽取的方法、装置、设备及计算机可读介质 |
CN109145215A (zh) * | 2018-08-29 | 2019-01-04 | 中国平安保险(集团)股份有限公司 | 网络舆情分析方法、装置及存储介质 |
-
2019
- 2019-01-10 CN CN201910023321.6A patent/CN109948019B/zh active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080040326A1 (en) * | 2006-08-14 | 2008-02-14 | International Business Machines Corporation | Method and apparatus for organizing data sources |
US20080259084A1 (en) * | 2006-08-14 | 2008-10-23 | International Business Machines Corporation | Method and apparatus for organizing data sources |
CN101004760A (zh) * | 2007-01-10 | 2007-07-25 | 苏州大学 | 基于视觉特征的页面查询接口抽取方法 |
CN101419625A (zh) * | 2008-12-02 | 2009-04-29 | 西安交通大学 | 一种基于最小可查询模式的Deep Web自适应爬取方法 |
CN101840432A (zh) * | 2010-05-11 | 2010-09-22 | 同方知网(北京)技术有限公司 | 一种基于Deep Web深层动态数据的数据挖掘装置及方法 |
CN101916272A (zh) * | 2010-08-10 | 2010-12-15 | 南京信息工程大学 | 用于深层网数据集成的数据源选择方法 |
US20170061029A1 (en) * | 2011-06-17 | 2017-03-02 | Microsoft Technology Licensing, Llc | Interactive web crawler |
CN103116635A (zh) * | 2013-02-07 | 2013-05-22 | 中国科学院计算技术研究所 | 面向领域的暗网资源采集方法和系统 |
CN103927392A (zh) * | 2014-05-04 | 2014-07-16 | 苏州大学 | 一种深层网络数据源异常点的检测方法及系统 |
CN106126705A (zh) * | 2016-07-01 | 2016-11-16 | 武汉泰迪智慧科技有限公司 | 一种大规模网络数据实时爬取系统 |
CN107193962A (zh) * | 2017-05-24 | 2017-09-22 | 百度在线网络技术(北京)有限公司 | 一种互联网推广信息的智能配图方法及装置 |
CN107944019A (zh) * | 2017-12-11 | 2018-04-20 | 中广在线(北京)文化传媒有限公司 | 一种基于爬虫技术的境外舆情监测装置、系统及方法 |
CN108090200A (zh) * | 2017-12-22 | 2018-05-29 | 中央财经大学 | 一种排序型隐藏网数据库数据的获取方法 |
CN108710672A (zh) * | 2018-05-17 | 2018-10-26 | 南京大学 | 一种基于增量贝叶斯算法的主题爬虫方法 |
CN109033200A (zh) * | 2018-06-29 | 2018-12-18 | 北京百度网讯科技有限公司 | 事件抽取的方法、装置、设备及计算机可读介质 |
CN109145215A (zh) * | 2018-08-29 | 2019-01-04 | 中国平安保险(集团)股份有限公司 | 网络舆情分析方法、装置及存储介质 |
Non-Patent Citations (1)
Title |
---|
YAN WANG等: "TS-IDS Algorithm for Query Selection in the Deep Web Crawling", 《ASIA-PACIFIC WEB CONFERENCE》 * |
Also Published As
Publication number | Publication date |
---|---|
CN109948019B (zh) | 2021-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102779193B (zh) | 自适应个性化信息检索系统及方法 | |
CN100507920C (zh) | 一种基于用户行为信息的搜索引擎检索结果重排序方法 | |
Venetis et al. | On the selection of tags for tag clouds | |
US7974974B2 (en) | Techniques to perform relative ranking for search results | |
CA2601768C (en) | Search engine that applies feedback from users to improve search results | |
CN103092856B (zh) | 搜索结果排序方法及设备、搜索方法及设备 | |
Dou et al. | Evaluating the effectiveness of personalized web search | |
CN102890711B (zh) | 一种检索排序方法及系统 | |
CN102081668B (zh) | 基于领域本体的信息检索优化方法 | |
WO2006007229A1 (en) | Method and apparatus for retrieving and indexing hidden web pages | |
CN102760138A (zh) | 用户网络行为的分类方法和装置及对应的搜索方法和装置 | |
CN105975584B (zh) | 一种数学表达式相似距离测量方法 | |
CN1996316A (zh) | 基于网页相关性的搜索引擎搜索方法 | |
CN103823906A (zh) | 一种基于微博数据的多维度检索排序优化算法和工具 | |
Li et al. | E-FFC: an enhanced form-focused crawler for domain-specific deep web databases | |
CN101814085A (zh) | 基于wdb特征和用户查询请求的web数据库选择方法 | |
CN102364467A (zh) | 一种网络搜索方法和系统 | |
CN103559258A (zh) | 基于云计算的网页排序方法 | |
CN102214183A (zh) | 按页面反馈内容与固定排名相结合的搜索引擎查询方法 | |
CN104615723B (zh) | 查询词权重值的确定方法和装置 | |
Wang et al. | Search engine optimization based on algorithm of BP neural networks | |
Yan et al. | An improved PageRank method based on genetic algorithm for web search | |
CN109948019A (zh) | 一种深层网络数据获取方法 | |
US7490082B2 (en) | System and method for searching internet domains | |
US20110258187A1 (en) | Relevance-Based Open Source Intelligence (OSINT) Collection |
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 |