一种基于深网爬虫的高效数据采集方法及系统的制作方法
【专利摘要】本发明公开了一种基于深网爬虫的高效数据采集方法及系统,包括:利用已知名称作为关键词进行初步搜索采样,获取对应编号信息和编号规则;将所有编号信息按照编号规则分组后并按升序排列,两两编号信息建立一个数据间隔;基于编号信息按照数据间隔从小到大的顺序进行遍历搜索,获取数据全集。本发明所公开的技术方案可以适用于多种行业信息的数据抓取,包括但不限于:企业工商信息、图书信息、商品信息、审判文书等。利用本发明所述的技术方案对于行业性网站进行深网数据抓取,不仅能够准确获取相关数据全集,更重要的是能够在较短时间内完成大量有效数据的采集。
【专利说明】
一种基于深网爬虫的高效数据采集方法及系统
技术领域
[0001]本发明涉及网络数据采集技术领域,尤其涉及一种基于深网爬虫的高效数据采集方法及系统,能够应用于企业工商信息、图书信息、商品信息、审判文书等数据的抓取。
【背景技术】
[0002]深层网的概念是相对于表层网来定义的,指的是那些不能被普通搜索引擎所获取的内容。而藏于深层网中的数据数量非常庞大,但是传统的搜索引擎忽略了这些高质量并隐藏在搜索表单后的数据。因此,设计一个能够获取深层网络数据的引擎是当务之急,对于这些高质量数据的利用能够带来意想不到的效果。
[0003]但是,由于深层网中的数据隐藏在各种搜索界面后面,无法直接通过超链接来访问,它们必须要通过使用一些关键词查询才可以看到。因此,深层网的数据爬取要比表层网的数据爬取更复杂些,它在访问并解析出URL后,还需要继续分析该页面是否包含有深层网入口的表单。
[0004]针对企业工商信息搜索、图书搜索、商品搜索或者审判文书本身的深层网络性质,传统的数据全集信息搜索存在诸多的限制。目前,现有的利用深网爬虫技术获取上述全集的方法包括:
[0005]—是利用相关名称作为关键词获取全集信息,这种方式的缺点是:由于不一定得知所有待采集信息的名称,因此基本无法获取全集,并且处理效率较低;
[0006]—是利用相关编号信息一一遍历搜索的方式获取全集信息,这种方式的缺点是:因为编号信息的不连续的特性(如:预留空位、信息废弃、尚未启动等)使得采集输出不稳定、不高效,无法达到高效采集的目的。
【发明内容】
[0007]传统的行业性网站的数据全集的采集方法存在较多局限性,一是无法准确获取数据全集,存在数据遗漏;二是如果采用一一遍历的采样手段,不仅浪费系统资源,并且采集时间较长,效率不高。
[0008]针对上述技术问题,本发明公开了一种基于深网爬虫的高效数据采集方法及系统,通过已知名称进行搜索,从而采样得到相对应的编号信息,各编号信息形成多个数据间隔,先对数据间隔较小的区间依据编号信息进行一一遍历搜索,从而可以在较短时间内完成大部分有效数据的采集工作,最终完成整体数据全集的采集工作,进而保证采集完整无遗漏。
[0009]本发明首先公开了一种基于深网爬虫的高效数据采集方法,包括:
[0010]利用已知名称作为关键词进行初步搜索采样,获取对应编号信息和编号规则;其中,所述编号信息为遵循一定编号规则并能够一一遍历的编码数据;
[0011]将所有编号信息按编号规则分组并按升序排列,两两编号信息建立一个数据间隔;
[0012]基于编号信息按照数据间隔从小到大的顺序进行遍历搜索。
[0013]进一步地,还包括:在已知编号信息最大值的基础上作指定数量的递增操作得到新编号信息,当所述新编号信息的采集结果为空,并且所述指定数量大于设定增量时,则停止递增操作。
[0014]进一步地,所述基于编号信息按照数据间隔从小到大的顺序进行遍历搜索,具体为:设置间隔阈值,当两个采集失败的编号信息的间隔小于等于所述间隔阈值时,则放弃该两编号信息之间的遍历搜索。
[0015]更进一步地:参考各分组既有数据分布规律,调整各分组数据采集策略。
[0016]上述方法中,利用预设数量的采样终端同时进行遍历搜索,获取数据全集。
[0017]本发明同时公开了一种基于深网爬虫的高效数据采集系统,包括;
[0018]初步采样模块,用于利用已知名称作为关键词进行初步搜索采样,获取对应编号信息和编号规则;其中,所述编号信息为遵循一定编号规则并能够一一遍历的编码数据;
[0019]间隔生成模块,用于将所有编号信息按编号规则分组并按升序排列,两两编号信息建立一个数据间隔;
[0020]数据获取模块,用于基于编号信息按照数据间隔从小到大的顺序进行遍历搜索。
[0021]进一步地,还包括:端点探测模块,用于在已知编号信息最大值的基础上作指定数量的递增操作得到新编号信息,当所述新编号信息的采集结果为空,并且所述指定数量大于设定增量时,则停止递增操作。
[0022]进一步地,所述数据获取模块,具体用于:设置间隔阈值,当两个采集失败的编号信息的间隔小于等于所述间隔阈值时,则放弃该两编号信息之间的遍历搜索。
[0023]更进一步地,还包括:策略调整模块,用于参考各分组既有数据分布规律,调整各分组数据采集策略。
[0024]上述系统中,利用预设数量的采样终端同时进行遍历搜索,获取数据全集。
[0025]综上所述,本发明公开了一种基于深网爬虫的高效数据采集方法及系统,通过预先获取的名称作为关键词进行搜索,获取这些名称对应的编号信息和编号规则,将这些编号信息按照编号规则分类后,在进行升序排列,两两编号信息之间形成一个个数据间隔;按照数据间隔从小到大排序,并从最小数据间隔开始基于编号信息作为关键词输入一一遍历搜索。
[0026]有益效果:本发明所公开技术方案,不仅能够完成相关数据全集的采集,而且能够实现在较短时间内完成大部分有效数据的收集工作,从而压缩采集时间提高效率,并且通过设置间隔阈值等手段及时放弃数据分布稀疏的数据间隔间的数据采样,进一步缩短数据采集时间,提高采集效率。
【附图说明】
[0027]为了更清楚地说明本发明的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0028]图1为本发明提供的一种基于深网爬虫的高效数据采集方法实施例流程图;
[0029]图2为本发明提供的一种基于深网爬虫的企业工商信息采集方法实施例流程图;
[0030]图3为本发明提供的一种基于深网爬虫的高效数据采集系统实施例结构示意图。
【具体实施方式】
[0031]本发明提供了一种基于深网爬虫的高效数据采集方法及系统实施例,为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明中技术方案作进一步详细的说明:
[0032]如图1所示,本发明首先提供了一种基于深网爬虫的高效数据采集方法实施例,包括:
[0033]SlOl利用已知名称作为关键词进行初步搜索采样,获取对应编号信息和编号规贝IJ;其中,所述编号信息为遵循一定编号规则并能够一一遍历的编码数据;其中,所述编号?目息并不一定是自然数,很多情况下是类似于SZ-NS-0001 (意思是:深圳-南山-0001)的复合结构;
[0034]S102将所有编号信息按编号规则分组并按升序排列,两两编号信息建立一个数据间隔;其中,首先按照编号规则分组,因为只有依据相同编号规则下的编号信息才能够进行有效排序;例如:‘SZ-NS’(深圳-南山)、‘SZ-LH’(深圳-罗湖)是两个不同的分组,每个分组内部依据相同的编号规则;
[0035]S103基于编号信息按照数据间隔从小到大的顺序进行遍历搜索。其中,由于数据间隔小的两编号信息间的数据密度普遍较大,因此先采集该部分数据将提高采集效率。
[0036]优选地,还包括:在已知编号信息最大值的基础上作指定数量的递增操作得到新编号信息,当所述新编号信息的采集结果为空,并且所述指定数量大于设定增量时,则停止递增操作。其中,进行升序排列后的最右端编号信息则为当前编号信息最大值,通过多次递增操作将得到新编号信息,利用新编号信息进行搜索,并判断采集结果,从而不断试探获取该数据全集的右侧端点值。
[0037]优选地,所述基于编号信息按照数据间隔从小到大的顺序进行遍历搜索,具体为:设置间隔阈值,当两个采集失败的编号信息的间隔小于等于所述间隔阈值时,则放弃该两编号信息之间的遍历搜索。即及时放弃数据稀疏的数据间隔之间的数据采集,避免拖慢采集速度进而影响整体数据的采集效率。
[0038]相应的,本发明实施例中所述的“遍历搜索”过程如下(假定之前的间隔排序的处理方式记作X):
[0039]对于已知有效的编号信息:5 200 500 800 1600
[0040]迭代1(对5->200处理):
[0041 ] 操作1:从5到200中设置20个新采样点15/25/35.../185,这个20可根据业务需要定义或调整。
[0042]操作2:对新获取的间隔序列同样采用X的方式进行处理。
[0043]迭代2(对200->500的处理)、迭代3(对500->800的处理)以及迭代4(对800->1600的处理)同上。
[0044]其总体思路是采样、分解、排序,但是从只有一层X的应用变成了多层X的应用。
[0045]更优选地:参考各分组既有数据分布规律,调整各分组数据采集策略。该技术手段的目的是多点并发从而提升数据采集的整体效率。
[0046]上述方法实施例中,利用预设数量的采样终端同时进行遍历搜索,获取数据全集。
[0047]如图2所示,本发明同时提供了一种基于深网爬虫的企业工商信息采集方法实施例,包括:
[0048]S201利用已知企业字号作为关键词进行初步搜索采样,获取对应企业工商注册号;
[0049]S202将获取的企业工商注册号分组并按升序排列,两两企业工商注册号建立一个数据间隔;
[0050]例如:SZ-NS-0001 (深圳-南山)、SZ-LH-0002(深圳-罗湖)就是两个不同的分组,每个分组是一个独立序列;接着,对于获取的6个深圳-罗湖区的企业工商注册号按升序排列,这里为了描述简洁省略前几位,只保留后四位,包括:0000、0001、0100、0101、0102、1000,因此形成了五个数据间隔,其中0001与0100之间的数据间隔要小于0102与1000之间的数据间隔;
[0051]S203基于企业工商注册号按照数据间隔从小到大的顺序进行遍历搜索。
[0052]因此,在上述两个具体数据间隔之间,先对0001与0100之间的企业工商注册号进行遍历搜索,如此循环下去获取深圳市的全部企业工商信息。
[0053]优选地,还包括:在已知编号信息最大值的基础上作指定数量的递增操作得到新编号信息,当所述新编号信息的采集结果为空,并且所述指定数量大于设定增量时,则停止递增操作。例如:若1000为当前已知信编号信息最大值,并发现1101的采集结果为空并且递增数量超过设定增量100,则停止递增操作,认为右侧端点已经获取。
[0054]优选地,所述基于编号信息按照数据间隔从小到大的顺序进行遍历搜索,具体为:设置间隔阈值,当两个采集失败的编号信息的间隔小于等于所述间隔阈值时,则放弃该两编号信息之间的遍历搜索。
[0055]例如:若设置间隔阈值为5,而对0102与1000之间的数据间隔进行遍历搜索时发现,在编号信息为0105与0109下的搜索结果为空,同时,0105与0109之间的间隔小于间隔阈值5,则满足上述设定条件,因此放弃0105与0109之间的遍历搜索。
[0056]如图3所示,本发明其次提供了一种基于深网爬虫的高效数据采集系统实施例,包括;
[0057]初步采样模块301,用于利用已知名称作为关键词进行初步搜索采样,获取对应编号信息和编号规则;其中,所述编号信息为遵循一定编号规则并能够一一遍历的编码数据;
[0058]间隔生成模块302,用于将所有编号信息按编号规则分组并按升序排列,两两编号信息建立一个数据间隔;
[0059]数据获取模块303,用于基于编号信息按照数据间隔从小到大的顺序进行遍历搜索。
[0060]优选地,还包括:端点探测模块,用于在已知编号信息最大值的基础上作指定数量的递增操作得到新编号信息,当所述新编号信息的采集结果为空,并且所述指定数量大于设定增量时,则停止递增操作。
[0061]优选地,所述数据获取模块,具体用于:设置间隔阈值,当两个采集失败的编号信息的间隔小于等于所述间隔阈值时,则放弃该两编号信息之间的遍历搜索。
[0062]优选地,还包括:策略调整模块,用于参考各分组既有数据分布规律,调整各分组数据采集策略。
[0063]上述系统实施例中,利用预设数量的采样终端同时进行遍历搜索,获取数据全集。
[0064]本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0065]如上所述,本发明提供了一种基于深网爬虫的高效数据采集方法及系统实施例,上述实施例首先通过预先得知的名称作为关键词获取对应的编号信息和编号规则,将上述编号信息按照大小升序排列后,各编号信息之间形成多个数据间隔,先抽取小的数据间隔,因为小的数据间隔中数据密度应该更大,因此对小的数据间隔中的编号信息依次进行遍历,进而获取相关数据信息。本发明利用这种数据间隔排序遍历的方式,能够第一时间遍历数据信息密集的部分,从而在短时间内完成大部分数据的采集工作,提高采集效率。
[0066]以上实施例用以说明而非限制本发明的技术方案。不脱离本发明精神和范围的任何修改或局部替换,均应涵盖在本发明的权利要求范围当中。
【主权项】
1.一种基于深网爬虫的高效数据采集方法,其特征在于,包括: 利用已知名称作为关键词进行初步搜索采样,获取对应编号信息和编号规则;其中,所述编号信息为遵循一定编号规则并能够一一遍历的编码数据; 将所有编号信息按编号规则分组并按升序排列,两两编号信息建立一个数据间隔; 基于编号信息按照数据间隔从小到大的顺序进行遍历搜索。2.如权利要求1所述的方法,其特征在于,还包括:在已知编号信息最大值的基础上作指定数量的递增操作得到新编号信息,当所述新编号信息的采集结果为空,并且所述指定数量大于设定增量时,则停止递增操作。3.如权利要求1所述的方法,其特征在于,所述基于编号信息按照数据间隔从小到大的顺序进行遍历搜索,具体为:设置间隔阈值,当两个采集失败的编号信息的间隔小于等于所述间隔阈值时,则放弃该两编号信息之间的遍历搜索。4.如权利要求2或3所述的方法,其特征在于,还包括:参考各分组既有数据分布规律,调整各分组数据采集策略。5.如权利要求4所述的方法,其特征在于,利用预设数量的采样终端同时进行遍历搜索,获取数据全集。6.一种基于深网爬虫的高效数据采集系统,其特征在于,包括: 初步采样模块,用于利用已知名称作为关键词进行初步搜索采样,获取对应编号信息和编号规则;其中,所述编号信息为遵循一定编号规则并能够一一遍历的编码数据; 间隔生成模块,用于将所有编号信息按编号规则分组并按升序排列,两两编号信息建立一个数据间隔; 数据获取模块,用于基于编号信息按照数据间隔从小到大的顺序进行遍历搜索。7.如权利要求6所述的系统,其特征在于,还包括:端点探测模块,用于在已知编号信息最大值的基础上作指定数量的递增操作得到新编号信息,当所述新编号信息的采集结果为空,并且所述指定数量大于设定增量时,则停止递增操作。8.如权利要求6所述的系统,其特征在于,所述数据获取模块,具体用于:设置间隔阈值,当两个采集失败的编号信息的间隔小于等于所述间隔阈值时,则放弃该两编号信息之间的遍历搜索。9.如权利要求7或8所述的系统,其特征在于,还包括:策略调整模块,用于参考各分组既有数据分布规律,调整各分组数据采集策略。10.如权利要求9所述的系统,其特征在于,利用预设数量的采样终端同时进行遍历搜索,获取数据全集。
【文档编号】G06F17/30GK106066875SQ201610370842
【公开日】2016年11月2日
【申请日】2016年5月30日 公开号201610370842.5, CN 106066875 A, CN 106066875A, CN 201610370842, CN-A-106066875, CN106066875 A, CN106066875A, CN201610370842, CN201610370842.5
【发明人】张军, 贾西贝, 钟志强
【申请人】深圳市华傲数据技术有限公司