一种用于爬取页面的方法和设备的制作方法

文档序号:6400242阅读:164来源:国知局
专利名称:一种用于爬取页面的方法和设备的制作方法
技术领域
本发明涉及互联网技术领域,尤其涉及一种用于爬取页面的技术。
背景技术
当前用于爬取网络页面的方法,是采用随机的广度优先策略。因此,对于定向爬取,则存在扩散速度慢,扩散方向和扩散速度难以控制,从而难以在期望的时间内扩散到期望的页面等问题。例如对于垂直站点中的数据进行爬取时,若数据的各个维度分布在不同页面上,则会存在严重的数据爬取不完全的情况;同时,由于在爬取过程中无法记录当前数据的爬取状态信息,因此对于爬取后不完整的数据,无法判断该数据的不完整是由于数据本身的不完备,或是对该页面的爬取尚未完成。

发明内容
本发明的目的是提供一种用于爬取页面的方法与设备。根据本发明的一个方面,提供了一种用于爬取页面的方法,其中,该方法包括以下步骤:X根据已爬取页面,获取对应候选爬取页面的候选页面标识信息;y根据所述候选爬取页面与所述已爬取页面的关联性信息,将所述候选页面标识信息添加至对应的待爬页面集合,其中,所述待爬页面集合包括一个或多个待爬取页面的页面标识信息; 其中,该方法还包括:a根据所述待爬页面集合,确定待爬取页面的目标爬取标识信息;b爬取所述目标爬取标识信息所对应的目标页面。根据本发明的另一方面,还提供了一种用于爬取页面的爬取设备,其中,该设备包括:候选标识获取装置,用于根据已爬取页面,获取对应候选爬取页面的候选页面标识息;分组装置,用于根据所述候选爬取页面与所述已爬取页面的关联性信息,将所述候选页面标识信息添加至对应的待爬页面集合,其中,所述待爬页面集合包括一个或多个待爬取页面的页面标识信息;其中,该设备还包括:爬取标识获取装置,用于根据所述待爬页面集合,确定待爬取页面的目标爬取标识息;爬取装置,用于爬取所述目标爬取标识信息所对应的目标页面。与现有技术相比,本发明通过根据已爬取页面,获取对应候选爬取页面的候选页面标识信息,并根据所述候选爬取页面与所述已爬取页面的关联性信息,将所述候选页面标识信息添加至对应的待爬页面集合;根据所述待爬页面集合,确定待爬取页面的目标爬取标识信息,爬取所述目标爬取标识信息所对应的目标页面;从而根据所述关联性信息,有效的控制了爬取的调度行为,以实现爬取调度的可配置性,使得爬取能够目的性的扩散,控制爬虫在网页间移动的方向和速度,提高了垂直爬虫的爬取效率,保证了爬取数据的完整性。而且,本发明还可以根据所述目标页面,以及所述已爬取页面,确定对应的数据对象,从而能够将同类的数据单元作为完整的数据对象进行爬取,保证了爬取数据的完整性。而且,所述待爬页面集合包括基于先进后出策略的第一待爬子集,从而将所述第一待爬子集中时序上最后被添加的页面标识信息,作为所述目标爬取标识信息;进一步地,还可以根据将所述候选页面标识信息添加至所述第一待爬子集的第一触发条件,将所述候选页面标识信息添加至所述第一待爬集合;从而实现基于先进后出策略的爬取方法,控制爬虫在网页间移动的方向和速度,提高了垂直爬虫的爬取效率。而且,所述待爬页面集合还包括基于时限处理策略的第二待爬子集,从而当所述第一待爬子集为空时,从所述第二待爬子集中确定所述目标爬取标识信息;进一步地,还可以根据将所述候选页面标识信息添加至所述第二待爬子集的第二触发条件,将所述候选页面标识信息添加至所述第二待爬集合;从而实现基于时限处理策略的爬取方法,与所述先进后出策略结合,控制爬虫在网页间移动的方向和速度,提高了垂直爬虫的爬取效率。而且,本发明还可以根据调整触发条件,对所述待爬页面集合进行相应调整;进一步地,当述待爬页面集合包括所述第一待爬集合与所述第二待爬集合,则所述调整触发条件包括所述第二待爬集合中第一个页面标识信息的爬取时限信息超出当前时间;从而实现了对待爬页面集合的灵活控制,实现爬取调度的可配置性,提高了垂直爬虫的爬取效率。


通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:图1示出根据本发明一个方面的一种用于爬取页面的爬取设备示意图;图2示出根据本发明一个优选实施例的一种用于爬取页面的爬取设备示意图;图3示出根据本发明另一个方面的一种用于爬取页面的方法流程图;图4示出根据本发明一个优选实施例的一种用于爬取页面的方法流程图。附图中相同或相似的附图标记代表相同或相似的部件。
具体实施例方式下面结合附图对本发明作进一步详细描述。图1示出根据本发明一个方面的一种用于爬取页面的爬取设备示意图;其中,所述爬取设备包括候选标识获取装置11、分组装置12、爬取标识获取装置13、爬取装置14。具体地,候选标识获取装置11根据已爬取页面,获取对应候选爬取页面的候选页面标识信息;分组装置12根据所述候选爬取页面与所述已爬取页面的关联性信息,将所述候选页面标识信息添加至对应的待爬页面集合,其中,所述待爬页面集合包括一个或多个待爬取页面的页面标识信息;爬取标识获取装置13根据所述待爬页面集合,确定待爬取页面的目标爬取标识信息;爬取装置14爬取所述目标爬取标识信息所对应的目标页面。
在此,爬取设备包括但不限于网络设备、用户设备、或网络设备与用户设备通过网络相集成所构成的设备。其中,所述网络设备其包括但不限于计算机、网络主机、单个网络服务器、多个网络服务器集或多个服务器构成的云;在此,云由基于云计算(CloudComputing)的大量计算机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个虚拟超级计算机。所述用户设备其包括但不限于任何一种可与用户通过键盘、遥控器、触摸板、或声控设备进行人机交互的电子产品,例如计算机、智能手机、PDA、游戏机、或IPTV等。所述网络包括但不限于互联网、广域网、城域网、局域网、VPN网络、无线自组织网络(Ad Hoc网络)等。本领域技术人员应能理解,其他的爬取设备同样适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。上述各装置之间是持续不断工作的,在此,本领域技术人员应理解“持续”是指上述各装置分别实时地或者按照设定的或实时调整的工作模式要求,进行候选页面标识信息的获取、与候选页面标识信息所对应的待爬页面集合的确定、目标爬取标识信息的确定、目标页面的爬取等,直至爬取设备停止获取对应候选爬取页面的候选页面标识信息。候选标识获取装置11根据已爬取页面,获取对应候选爬取页面的候选页面标识信息。具体地,候选标识获取装置11通过各种数据接口,基于所述已爬取页面的链接,获取所述已爬取页面上的一个或多个对应的页面内容,从而获取所述已爬取页面;或是直接与存储已爬取页面内容的数据库等存储设备进行交互,获取所述已爬取页面;候选标识获取装置11根据已爬取页面,通过对所述已爬取页面上的一个或多个页面内容进行扫描检测等方式,获取所述已爬取页面上的、对应候选爬取页面的候选页面标识信息。其中,所述候选页面标识信息包括但不限于所述已爬取页面中的各类超链接,如url、短url,以及相对标识或其他可用于确定页面的标识信息等。
分组装置12根据所述候选爬取页面与所述已爬取页面的关联性信息,将所述候选页面标识信息添加至对应的待爬页面集合,其中,所述待爬页面集合包括一个或多个待爬取页面的页面标识信息。具体地,分组装置12根据所述候选爬取页面所对应的候选页面标识信息,通过对所述候选页面标识信息进行解析、语义分析等方式,确定所述候选爬取页面与所述已爬取页面的关联性信息。其中,所述关联性信息包括但不限于内容关联性信息、时间关联性信息、页面模式(pattern)关联性信息中的一种或多种。例如,当所述候选页面标识信息为所述候选爬取页面的url时,分组装置12根据所述url所对应的pattern信息,确定所述关联性信息,如当所述已爬取页面为某一垂直商务网站的首页,则分组装置12根据候选标识获取装置11所获取的该首页上的一个或多个url信息,通过对所述url中pattern信息进行如正则匹配等方式,对其所定义的语义信息进行分析,判断该url所对应的类型信息(如产品页、联系方式页、公司介绍或公司认证等),根据所述类型信息,确定所述候选爬取页面与所述已爬取页面的关联性信息;分组装置12还可以根据所述候选页面标识信息中的关键字信息、title内容信息、摘要信息或者页面时间属性等信息,通过将所述候选页面标识信息与已爬取的页面进行匹配、或将两个页面的内容关键词进行相关性分析或计算距离等方式,确定所述候选爬取页面与所述已爬取页面的关联性信息,如当所述已爬取页面为某一公司的通讯页面时,若候选页面标识信息中的关键字信息与所述该公司的名称相匹配,则认为所述候选爬取页面与所述已爬取页面的关联性高。例如,已爬取页面为阿里巴巴的首页:
http: //china, al ibaba.com/则与所述已爬取页面相对应的一个候选爬取页面为:http://search, china, alibaba.com/sel1ffer/—1031644.html spm =a260k.635.5067267.6根据所述候选爬取页面的pattern信息,确定该页面的类别为索引页,所述待爬取页面与已爬取页面的关联性较低;若已爬取页面为:http: //yxx i 1688.cn.al ibaba.com/则与所述已爬取页面所对应的多个候选页面分别为: http://yxxi!688.cn.alibaba.com/page/creditdetail.htmhttp://yxxi!688.cn.alibaba.com/page/contactinf0.htm根据所述候选爬取页面的pattern信息,结合所述候选爬取页面与所述已爬取页面的关键字信息,确定该页面的类别为已爬取页面的“认证信息”与“联系方式”,则认为所述待爬取页面与已爬取页面的关联性较高。分组装置12通过根据所述候选爬取页面与所述已爬取页面的关联性信息,基于预定的判定条件,将所述候选页面标识信息添加至对应的待爬页面集合,例如,当所述关联性高时,将所述候选页面标识信息添加至待爬页面集合中的第一待爬子集,若所述关联性在预定的阈值范围内,或所述关联性信息中定义了时限要求,则将所述候选页面标识信息添加至待爬页面集合中的第二待爬子集,若所述关联性低,则将所述候选页面标识信息添加至待爬页面集合中的第三待爬子集。其中,所述待爬页面集合中包括但不限于基于先进后出策略的第一待爬子集、基于时限处理策略的第二待爬子集、基于先进先出策略的第三待爬子集、或者基于时限处理与先进先出的混合策略的第四待爬子集等;所述待爬页面集合包括一个或多个待爬取页面的页面标识信息,在此,所述页面标识信息包括但不限于用于表征该页面的各类超链接,如url、短url,以及相对标识或其他可用于确定页面的标识信息等。爬取标识获取装置13根据所述待爬页面集合,确定待爬取页面的目标爬取标识信息。具体地,爬取标识获取装置13根据所述待爬页面集合,通过基于所述待爬页面集合中的不同待爬子集所对应的策略,确定所述待爬页面集合中的待爬取页面的目标爬取标识信息;其中,所述目标爬取标识信息如爬取该待爬取页面的时间信息或爬取该待爬取页面的顺序信息等。例如对于所述待爬页面集合中基于先进先出策略的第三待爬子集,则按照所述待爬取页面确定为第三待爬子集中的时间信息,对所述待爬取页面依次排序,将所述排序信息作为待爬取页面的目标爬取标识信息。爬取装置14爬取所述目标爬取标识信息所对应的目标页面。具体地,爬取装置14根据所述目标爬取标识信息所确定的爬取顺序,对所对应的目标页面进行爬取,获取所述目标页面上的相应数据信息。在此,本领域技术人员应能理解,若所述目标页面中包含所述候选页面标识信息,则本发明还可以根据所述爬取装置14所爬取的目标页面,将所述爬取后的目标页面作为已爬取页面,执行候选标识获取装置11中的操作,以实现循环执行。优选地,所述爬取设备还包括数据确定装置(未示出),其中,所述数据确定装置根据所述目标页面,以及所述已爬取页面,确定对应的数据对象,其中,所述数据对象包括基于所述目标页面和/或所述已爬取页面的页面内容的数据单元。具体地,所述数据确定装置通过对根据所述目标页面所爬取的内容,以及根据所述已爬取页面的内容,通过基于所述已爬取页面与所述目标页面的关联性信息,将所述目标页面和/或所述已爬取页面的页面内容的相关联的一个或多个数据单元进行提取,确定对应的数据对象。例如,当所述已爬取的页面为某公司的通讯地址信息,而所述目标页面为该公司的产品页,则将所述已爬取页面与所述目标页面中与该公司相关联的通讯地址信息与产品信息进行提取,生成与该公司相关联的数据对象,以实现爬取数据的完整性。优选地,其中,当所述待爬页面集合包括基于先进后出策略的第一待爬子集,所述爬取标识获取装置13还可以将所述第一待爬子集中时序上最后被添加的页面标识信息,作为所述目标爬取标识信息。具体地,所述待爬页面集合包括基于先进后出策略的第一待爬子集,则所述爬取标识获取装置13根据所述第一待爬子集中页面标识信息被添加的时间顺序,确定所述目标爬取标识信息;例如,若某一待爬取页面是当前时间内最后被添加至该第一待爬子集中的待爬取页面,则将所述待爬页面所对应的页面标识信息(如url),作为目标爬取标识信息优先爬取。即,所述第一待爬子集可利用先入后出(FILO)的堆栈实现,根据待爬取页面被添加至该第一待爬子集的时间顺序,依据先入后出原则,确定所述待爬取页面的爬取顺序。在此,所述页面标识信息中还可以包括用于表示当前待抓取页面是否被抓取的状态标识信息,当所述待抓取页面被抓取后,该状态标识改变;如未被抓取前,状态标识为1,抓取后,状态标识为O,以监控该页面是否已被抓取。更优选地,所述分组装置12还可以根据所述候选爬取页面与所述已爬取页面的关联性信息,检测是否满足将所述候选页面标识信息添加至所述第一待爬子集的第一触发条件;当满足所述第一触发条件,将所述候选页面标识信息添加至所述第一待爬集合,其中,所述第一待爬集合包括一个或多个待爬取页面的页面标识信息。具体地,所述分组装置12通过根据所述候选爬取页面所对应的候选页面标识信息,通过对所述候选页面标识信息进行解析、语义分析等方式,确定所 述候选爬取页面与所述已爬取页面的关联性信息。在此,所述确定关联性信息的方式与图1中所述分组装置12的确定关联性信息的方式相同或相似,故在此不再赘述,并通过引用的方式包含于此。根据所述关联性信息,通过结合所述候选爬取页面的属性信息(如页面类型等)、以及所述第一待爬子集的容量等,检测是否满足将所述候选页面标识信息添加至所述第一待爬子集的第一触发条件;当满足所述第一触发条件,将所述候选页面标识信息添加至所述第一待爬集合,其中,所述第一待爬集合包括一个或多个待爬取页面的页面标识信息。更优选地,所述第一触发条件包括以下至少任一项:-所述关联性信息满足预定关联阈值,且所述候选爬取页面中包含待抓取的数据单元;在此,所述待抓取的数据单元例如某公司的通讯信息、地址信息、产品信息等数据单元;-所述关联性信息满足预定关联阈值,且所述第一待爬子集未满,即所述第一待爬子集中仍存在可用空间,可用来存放新的待爬取页面;-所述关联性信息满足预定关联阈值,且所述候选爬取页面满足其他的预定爬取条件,在此,所述其他的预定爬取条件包括但不限于根据页面内容中预设的关键字、或该页面所对应的数据信息的时间信息等,例如若当前页面的数据信息更新或更可靠则应提前抓取,例如,对于时效性强的显示汇率数据页面中,时间越接近当前的页面越应优先抓取等。优选地,当所述待爬页面集合还包括基于时限处理策略的第二待爬子集时,所述爬取标识获取装置13还可以当所述第一待爬子集为空时,从所述第二待爬子集中确定所述目标爬取标识信息,其中,所述目标爬取标识信息所对应的爬取时限时间小于或等于当前时间。具体地,所述待爬页面集合包括基于时限处理策略的第二待爬子集,则所述爬取标识获取装置13首先确定所述第一待爬子集是否为空,若所述第一待爬子集为空时,所述爬取标识获取装置13根据所述第二待爬子集中的待爬取页面所对应的时间信息,确定所述目标爬取标识信息,其中,所述目标爬取标识信息所对应的爬取时限时间小于或等于当前时间。在此,所述时间信息包括但不限于所述待爬取页面添加至所述第二待爬子集的时间点、所述待爬取页面的最早爬取等待时间、所述待爬取页面的最长爬取等待时间、所述待爬取页面的爬取时限时间(即该待爬取页面完成爬取的时间)等。其中,所述爬取时限时间可根据所述待爬取页面的添加至所述第二待爬子集的时间点加上所述待爬取页面的最长爬取等待时间获取。例如,根据预定的爬取等待时间,将所述待爬取页面添加至所述第二待爬子集的时间点,加上所述最早爬取等待时间,作为该待爬取页面的爬取启动时间;再根据所述待爬取页面的最长爬取等待时间,确定该待爬取页面的爬取时限时间等;所述目标爬取标识信息所对应的爬取时限时间(即该待爬取页面完成爬取的时间)小于或等于当前时间。更优选地,所述分组装置12还可以根据所述候选爬取页面与所述已爬取页面的关联性信息,检测是否满足将所述候选页面标识信息添加至所述第二待爬子集的第二触发条件;当满足所述第二触发条件,将所述候选页面标识信息添加至所述第二待爬集合,其中,所述第二待爬集合包括一个或多个待爬取页面的页面标识信息,以及所述页面标识信息所对应的爬取时限信息。具体地,所述分组装置12通过根据所述候选爬取页面所对应的候选页面标识信息,通过对所述候选页面标识 信息进行解析、语义分析等方式,确定所述候选爬取页面与所述已爬取页面的关联性信息。在此,所述确定关联性信息的方式与图1中所述分组装置12的确定关联性信息的方式相同或相似,故在此不再赘述,并通过引用的方式包含于此。根据所述关联性信息,通过结合所述候选爬取页面的属性信息(如页面类型等),检测是否满足将所述候选页面标识信息添加至所述第二待爬子集的第二触发条件,例如当所述候选爬取页面的页面类型为包含多个链接的索引页或目录页时,则认为其满足所述第二触发条件;当满足所述第二触发条件,将所述候选页面标识信息添加至所述第二待爬集合,其中,所述第二待爬集合包括一个或多个待爬取页面的页面标识信息,以及所述页面标识信息所对应的爬取时限信息。其中,所述爬取时限信息包括但不限于所述待爬取页面添加至所述第二待爬子集的时间点、所述待爬取页面的最早爬取等待时间、所述待爬取页面的最长爬取等待时间、所述待爬取页面的爬取时限时间(即该待爬取页面完成爬取的时间)等。图2示出根据本发明一个优选实施例的一种用于爬取页面的爬取设备示意图;其中,所述爬取设备包括候选标识获取装置11’、分组装置12’、爬取标识获取装置13’、爬取装置14’、检测装置15’、调整装置16’。具体地,候选标识获取装置11’根据已爬取页面,获取对应候选爬取页面的候选页面标识信息;分组装置12’根据所述候选爬取页面与所述已爬取页面的关联性信息,将所述候选页面标识信息添加至对应的待爬页面集合,其中,所述待爬页面集合包括一个或多个待爬取页面的页面标识信息;爬取标识获取装置13’根据所述待爬页面集合,确定待爬取页面的目标爬取标识信息;爬取装置14’爬取所述目标爬取标识信息所对应的目标页面;检测装置15’检测是否满足调整所述待爬页面集合的调整触发条件;调整装置16’当满足所述调整触发条件,对所述待爬页面集合进行相应调整。其中,所述候选标识获取装置11’、分组装置12’、爬取标识获取装置13’、爬取装置14’与图1所示对应装置相同或基本相同,故此处不再赘述,并通过引用的方式包含于此。上述各装置之间是持续不断工作的,在此,本领域技术人员应理解“持续”是指上述各装置分别实时地或者按照设定的或实时调整的工作模式要求,进行候选页面标识信息的获取、与候选页面标识信息所对应的待爬页面集合的确定、目标爬取标识信息的确定、目标页面的爬取、调整触发条件的检测、待爬页面集合的调整等,直至爬取设备停止获取对应候选爬取页面的候选页面标识信息。检测装置15’检测是否满足调整所述待爬页面集合的调整触发条件。具体地,所述检测装置15’通过定时检测或基于预定的触发事件等,检测所述调整所述待爬页面集合的调整触发条件是否被触发;例如,所述调整触发条件包括但不限于定时调整、根据爬取时限信息进行调整、根据系统处理能力的变化进行调整等。如当系统的带宽变化或系统更换处理器时,则触发对所述待爬页面集合的调整。调整装置16’当满足所述调整触发条件,对所述待爬页面集合进行相应调整。具体地,当检测装置15’检测到满足所述调整触发条件,所述调整装置16’基于所述调整触发条件,以及所述调整触发条件所对应的相应信息,对所述待爬页面集合进行相应调整。其中,所述调整操作包括但不限于调整所述带爬页面集合的容量信息、调整所述待爬集合中页面标识信息的爬取时限信息、调整所述待爬页面集合所对应的爬取资源信息等。优选地,当所述待爬页面集合包括所述第一待爬集合与所述第二待爬集合时,其中,所述调整触发条件包括所述第二待爬集合中第一个页面标识信息的爬取时限信息超出当前时间。具体地,当所述待爬页面集合包 括所述第一待爬集合与所述第二待爬集合时,若所述第二待爬集合中第一个页面标识信息的爬取时限信息超出当前时间,则表示所述第一待爬集合中的待爬取页面数量过多或当前系统对所述第一待爬集合的处理效率过低,使得所述第二待爬集合中的第一个待爬页面长期得不到处理,以致超时。因此将所述第二待爬集合中第一个页面标识信息的爬取时限信息超出当前时间,作为所述调整触发条件。更优选地,当所述第二待爬集合中第一个页面标识信息的爬取时限信息超出当前时间时,其中,所述相应调整操作包括以下至少任一项:-减少所述第一待爬集合的容量,例如,减少所述第一待爬集合的所处理的待爬取页面的数量、减少所述第一待爬集合所处理的待爬取页面的类型等;-延长所述第二待爬集合中页面标识信息的爬取时限信息,例如,调整所述第二待爬集合中的爬取时限信息,延长所述第二待爬集合的最晚爬取时间,或是延长所述第二待爬集合的等待时间等;-增加所述待爬页面集合所对应的爬取资源信息,在此,所述爬取资源信息包括但不限于系统处理能力、出口带宽等。图3示出根据本发明另一个方面的一种用于爬取页面的方法流程图。具体地,在步骤Si中,爬取设备根据已爬取页面,获取对应候选爬取页面的候选页面标识信息;在步骤s2中,爬取设备根据所述候选爬取页面与所述已爬取页面的关联性信息,将所述候选页面标识信息添加至对应的待爬页面集合,其中,所述待爬页面集合包括一个或多个待爬取页面的页面标识信息;在步骤s3中,爬取设备根据所述待爬页面集合,确定待爬取页面的目标爬取标识信息;在步骤s4中,爬取设备爬取所述目标爬取标识信息所对应的目标页面。上述各步骤之间是持续不断工作的,在此,本领域技术人员应理解“持续”是指上述各步骤分别实时地或者按照设定的或实时调整的工作模式要求,进行候选页面标识信息的获取、与候选页面标识信息所对应的待爬页面集合的确定、目标爬取标识信息的确定、目标页面的爬取等,直至爬取设备停止获取对应候选爬取页面的候选页面标识信息。在步骤Si中,爬取设备根据已爬取页面,获取对应候选爬取页面的候选页面标识信息。具体地,在步骤Si中,爬取设备通过各种数据接口,基于所述已爬取页面的链接,获取所述已爬取页面上的一个或多个对应的页面内容,从而获取所述已爬取页面;或是直接与存储已爬取页面内容的数据库等存储设备进行交互,获取所述已爬取页面;在步骤Si中,爬取设备根据已爬取页面,通过对所述已爬取页面上的一个或多个页面内容进行扫描检测等方式,获取所述已爬取页面上的、对应候选爬取页面的候选页面标识信息。其中,所述候选页面标识信息包括但不限于所述已爬取页面中的各类超链接,如url、短url,以及相对标识或其他可用于确定页面的标识信息等。在步骤s2中,爬取设备根据所述候选爬取页面与所述已爬取页面的关联性信息,将所述候选页面标识信息添加至对应的待爬页面集合,其中,所述待爬页面集合包括一个或多个待爬取页面的页面标识信息。具体地,在步骤s2中,爬取设备根据所述候选爬取页面所对应的候选页面标识信息,通过对所述候选页面标识信息进行解析、语义分析等方式,确定所述候选爬取页面与所述已爬取页面的关联性信息。其中,所述关联性信息包括但不限于内容关联性信息、时间关联性信息 、页面模式(pattern)关联性信息中的一种或多种。例如,当所述候选页面标识信息为所述候选爬取页面的url时,在步骤s2中,爬取设备根据所述url所对应的pattern信息,确定所述关联性信息,如当所述已爬取页面为某一垂直商务网站的首页,则爬取设备根据步骤Si中所获取的该首页上的一个或多个url信息,通过对所述url中pattern信息进行如正则匹配等方式,对其所定义的语义信息进行分析,判断该url所对应的类型信息(如产品页、联系方式页、公司介绍或公司认证等),根据所述类型信息,确定所述候选爬取页面与所述已爬取页面的关联性信息;在步骤s2中,爬取设备还可以根据所述候选页面标识信息中的关键字信息、title内容信息、摘要信息或者页面时间属性等信息,通过将所述候选页面标识信息与已爬取的页面进行匹配、或将两个页面的内容关键词进行相关性分析或计算距离等方式,确定所述候选爬取页面与所述已爬取页面的关联性信息,如当所述已爬取页面为某一公司的通讯页面时,若候选页面标识信息中的关键字信息与所述该公司的名称相匹配,则认为所述候选爬取页面与所述已爬取页面的关联性高。例如,已爬取页面为阿里巴巴的首页:httn: //china, al ibaha.com/则与所述已爬取页面相对应的一个候选爬取页面为:http://search.china.alibaba.com/selloffer/—1031644.html spm =a260k.635.5067267.6根据所述候选爬取页面的pattern信息,确定该页面的类别为索引页,所述待爬取页面与已爬取页面的关联性较低;若已爬取页面为:http: //yxx i 1688.cn.al ibaba.com/则与所述已爬取页面所对应的多个候选页面分别为:http://yxxi!688.cn.alibaba.com/page/creditdetail.htmhttp://yxxi!688.cn.alibaba.com/page/contactinf0.htm根据所述候选爬取页面的pattern信息,结合所述候选爬取页面与所述已爬取页面的关键字信息,确定该页面的类别为已爬取页面的“认证信息”与“联系方式”,则认为所述待爬取页面与已爬取页面的关联性较高。在步骤s2中,爬取设备通过根据所述候选爬取页面与所述已爬取页面的关联性信息,基于预定的判定条件,将所述候选页面标识信息添加至对应的待爬页面集合,例如,当所述关联性高时,将所述候选页面标识信息添加至待爬页面集合中的第一待爬子集,若所述关联性在预定的阈值范围内,或所述关联性信息中定义了时限要求,则将所述候选页面标识信息添加至待爬页面集合中的第二待爬子集,若所述关联性低,则将所述候选页面标识信息添加至待爬页面集合中的第三 待爬子集。其中,所述待爬页面集合中包括但不限于基于先进后出策略的第一待爬子集、基于时限处理策略的第二待爬子集、基于先进先出策略的第三待爬子集、或者基于时限处理与先进先出的混合策略的第四待爬子集等;所述待爬页面集合包括一个或多个待爬取页面的页面标识信息,在此,所述页面标识信息包括但不限于用于表征该页面的各类超链接,如url、短url,以及相对标识或其他可用于确定页面的标识信息等。 在步骤s3中,爬取设备根据所述待爬页面集合,确定待爬取页面的目标爬取标识信息。具体地,在步骤S3中,爬取设备根据所述待爬页面集合,通过基于所述待爬页面集合中的不同待爬子集所对应的策略,确定所述待爬页面集合中的待爬取页面的目标爬取标识信息;其中,所述目标爬取标识信息如爬取该待爬取页面的时间信息或爬取该待爬取页面的顺序信息等。例如对于所述待爬页面集合中基于先进先出策略的第三待爬子集,则按照所述待爬取页面确定为第三待爬子集中的时间信息,对所述待爬取页面依次排序,将所述排序信息作为待爬取页面的目标爬取标识信息。在步骤s4中,爬取设备爬取所述目标爬取标识信息所对应的目标页面。具体地,在步骤s4中,爬取设备根据所述目标爬取标识信息所确定的爬取顺序,对所对应的目标页面进行爬取,获取所述目标页面上的相应数据信息。在此,本领域技术人员应能理解,若所述目标页面中包含所述候选页面标识信息,则本发明还可以根据所述步骤s4中所爬取的目标页面,将所述爬取后的目标页面作为已爬取页面,执行步骤Si中的操作,以实现循环执行。优选地,所述爬取设备还包括步骤s7 (未示出),其中,在步骤s7中,爬取设备根据所述目标页面,以及所述已爬取页面,确定对应的数据对象,其中,所述数据对象包括基于所述目标页面和/或所述已爬取页面的页面内容的数据单元。具体地,在步骤s7中,爬取设备通过对根据所述目标页面所爬取的内容,以及根据所述已爬取页面的内容,通过基于所述已爬取页面与所述目标页面的关联性信息,将所述目标页面和/或所述已爬取页面的页面内容的相关联的一个或多个数据单元进行提取,确定对应的数据对象。例如,当所述已爬取的页面为某公司的通讯地址信息,而所述目标页面为该公司的产品页,则将所述已爬取页面与所述目标页面中与该公司相关联的通讯地址信息与产品信息进行提取,生成与该公司相关联的数据对象,以实现爬取数据的完整性。优选地,其中,当所述待爬页面集合包括基于先进后出策略的第一待爬子集,在步骤S3中,爬取设备还可以将所述第一待爬子集中时序上最后被添加的页面标识信息,作为所述目标爬取标识信息。具体地,所述待爬页面集合包括基于先进后出策略的第一待爬子集,则在步骤S3中,爬取设备根据所述第一待爬子集中页面标识信息被添加的时间顺序,确定所述目标爬取标识信息;例如,若某一待爬取页面是当前时间内最后被添加至该第一待爬子集中的待爬取页面,则将所述待爬页面所对应的页面标识信息(如url),作为目标爬取标识信息优先爬取。即,所述第一待爬子集可利用先入后出(FILO)的堆栈实现,根据待爬取页面被添加至该第一待爬子集的时间顺序,依据先入后出原则,确定所述待爬取页面的爬取顺序。在此,所述页面标识信息中还可以包括用于表示当前待抓取页面是否被抓取的状态标识信息,当所述待抓取页面被抓取后,该状态标识改变;如未被抓取前,状态标识为1,抓取后,状态标识为O,以监控该页面是否已被抓取。更优选地,在步骤s2中,爬取设备还可以根据所述候选爬取页面与所述已爬取页面的关联性信息,检测是否满足将所述候选页面标识信息添加至所述第一待爬子集的第一触发条件;当满足所述第一触发条件,将所述候选页面标识信息添加至所述第一待爬集合,其中,所述第一待爬集合包括一个或多个待爬取页面的页面标识信息。具体地,在步骤s2中,爬取设备通过根据所述候选爬取页面所对应的候选页面标识信息,通过对所述候选页面标识信息进行解析、语义分析等方式,确定所述候选爬取页面与所述已爬取页面的关联性信息。在此,所述确定关联性信息的方式与图3中所述步骤s2的确定关联性信息的方式相同或相似,故在此不再赘述,并通过引用的方式包含于此。根据所述 关联性信息,通过结合所述候选爬取页面的属性信息(如页面类型等)、以及所述第一待爬子集的容量等,检测是否满足将所述候选页面标识信息添加至所述第一待爬子集的第一触发条件;当满足所述第一触发条件,将所述候选页面标识信息添加至所述第一待爬集合,其中,所述第一待爬集合包括一个或多个待爬取页面的页面标识信息。更优选地,所述第一触发条件包括以下至少任一项:-所述关联性信息满足预定关联阈值,且所述候选爬取页面中包含待抓取的数据单元;在此,所述待抓取的数据单元例如某公司的通讯信息、地址信息、产品信息等数据单元;-所述关联性信息满足预定关联阈值,且所述第一待爬子集未满,即所述第一待爬子集中仍存在可用空间,可用来存放新的待爬取页面;-所述关联性信息满足预定关联阈值,且所述候选爬取页面满足其他的预定爬取条件,在此,所述其他的预定爬取条件包括但不限于根据页面内容中预设的关键字、或该页面所对应的数据信息的时间信息等,例如若当前页面的数据信息更新或更可靠则应提前抓取,例如,对于时效性强的显示汇率数据页面中,时间越接近当前的页面越应优先抓取等。优选地,当所述待爬页面集合还包括基于时限处理策略的第二待爬子集时,在步骤s3中,爬取设备还可以当所述第一待爬子集为空时,从所述第二待爬子集中确定所述目标爬取标识信息,其中,所述目标爬取标识信息所对应的爬取时限时间小于或等于当前时间。具体地,所述待爬页面集合包括基于时限处理策略的第二待爬子集,则在步骤s3中,爬取设备首先确定所述第一待爬子集是否为空,若所述第一待爬子集为空时,在步骤s3中,爬取设备根据所述第二待爬子集中的待爬取页面所对应的时间信息,确定所述目标爬取标识信息,其中,所述目标爬取标识信息所对应的爬取时限时间小于或等于当前时间。在此,所述时间信息包括但不限于所述待爬取页面添加至所述第二待爬子集的时间点、所述待爬取页面的最早爬取等待时间、所述待爬取页面的最长爬取等待时间、所述待爬取页面的爬取时限时间(即该待爬取页面完成爬取的时间)等。其中,所述爬取时限时间可根据所述待爬取页面的添加至所述第二待爬子集的时间点加上所述待爬取页面的最长爬取等待时间获取。例如,根据预定的爬取等待时间,将所述待爬取页面添加至所述第二待爬子集的时间点,加上所述最早爬取等待时间,作为该待爬取页面的爬取启动时间;再根据所述待爬取页面的最长爬取等待时间,确定该待爬取页面的爬取时限时间等;所述目标爬取标识信息所对应的爬取时限时间(即该待爬取页面完成爬取的时间)小于或等于当前时间。更优选地,在步骤s2中,爬取设备还可以根据所述候选爬取页面与所述已爬取页面的关联性信息,检测是否满足将所述候选页面标识信息添加至所述第二待爬子集的第二触发条件;当满足所述第二触发条件,将所述候选页面标识信息添加至所述第二待爬集合,其中,所述第二待爬集合包括一个或多个待爬取页面的页面标识信息,以及所述页面标识信息所对应的爬取时限信息。具体地,在步骤s2中,爬取设备通过根据所述候选爬取页面所对应的候选页面标识信息,通过对所述候选页面标识信息进行解析、语义分析等方式,确定所述候选爬取页面与所述已爬取页面的关联性信息。在此,所述确定关联性信息的方式与图3中所述步骤s2的确定关联 性信息的方式相同或相似,故在此不再赘述,并通过引用的方式包含于此。根据所述关联性信息,通过结合所述候选爬取页面的属性信息(如页面类型等),检测是否满足将所述候选页面标识信息添加至所述第二待爬子集的第二触发条件,例如当所述候选爬取页面的页面类型为包含多个链接的索引页或目录页时,则认为其满足所述第二触发条件;当满足所述第二触发条件,将所述候选页面标识信息添加至所述第二待爬集合,其中,所述第二待爬集合包括一个或多个待爬取页面的页面标识信息,以及所述页面标识信息所对应的爬取时限信息。其中,所述爬取时限信息包括但不限于所述待爬取页面添加至所述第二待爬子集的时间点、所述待爬取页面的最早爬取等待时间、所述待爬取页面的最长爬取等待时间、所述待爬取页面的爬取时限时间(即该待爬取页面完成爬取的时间)等。图4示出根据本发明一个优选实施例的一种用于爬取页面的方法流程图。具体地,在步骤Si’中,爬取设备根据已爬取页面,获取对应候选爬取页面的候选页面标识信息;在步骤s2’中,爬取设备根据所述候选爬取页面与所述已爬取页面的关联性信息,将所述候选页面标识信息添加至对应的待爬页面集合,其中,所述待爬页面集合包括一个或多个待爬取页面的页面标识信息;在步骤S3’中,爬取设备根据所述待爬页面集合,确定待爬取页面的目标爬取标识信息;在步骤s4’中,爬取设备爬取所述目标爬取标识信息所对应的目标页面;在步骤s5’中,爬取设备检测是否满足调整所述待爬页面集合的调整触发条件;在步骤s6’中,爬取设备当满足所述调整触发条件,对所述待爬页面集合进行相应调整。其中,所述步骤81’、步骤82’、步骤83’、步骤84’与图3所示对应步骤相同或基本相同,故此处不再赘述,并通过引用的方式包含于此。上述各步骤之间是持续不断工作的,在此,本领域技术人员应理解“持续”是指上述各步骤分别实时地或者按照设定的或实时调整的工作模式要求,进行候选页面标识信息的获取、与候选页面标识信息所对应的待爬页面集合的确定、目标爬取标识信息的确定、目标页面的爬取、调整触发条件的检测、待爬页面集合的调整等,直至爬取设备停止获取对应候选爬取页面的候选页面标识信息。在步骤s5’中,爬取设备检测是否满足调整所述待爬页面集合的调整触发条件。具体地,在步骤s5’中,爬取设备通过定时检测或基于预定的触发事件等,检测所述调整所述待爬页面集合的调整触发条件是否被触发;例如,所述调整触发条件包括但不限于定时调整、根据爬取时限信息进行调整、根据系统处理能力的变化进行调整等。如当系统的带宽变化或系统更换处理器时,则触发对所述待爬页面集合的调整。在步骤s6’中,爬取设备当满足所述调整触发条件,对所述待爬页面集合进行相应调整。具体地,当在步骤s6’中,爬取设备检测到满足所述调整触发条件,在步骤s6’中,爬取设备基于所述调整触发条件,以及所述调整触发条件所对应的相应信息,对所述待爬页面集合进行相应调整。其中,所述 调整操作包括但不限于调整所述带爬页面集合的容量信息、调整所述待爬集合中页面标识信息的爬取时限信息、调整所述待爬页面集合所对应的爬取资源信息等。优选地,当所述待爬页面集合包括所述第一待爬集合与所述第二待爬集合时,其中,所述调整触发条件包括所述第二待爬集合中第一个页面标识信息的爬取时限信息超出当前时间。具体地,当所述待爬页面集合包括所述第一待爬集合与所述第二待爬集合时,若所述第二待爬集合中第一个页面标识信息的爬取时限信息超出当前时间,则表示所述第一待爬集合中的待爬取页面数量过多或当前系统对所述第一待爬集合的处理效率过低,使得所述第二待爬集合中的第一个待爬页面长期得不到处理,以致超时。因此将所述第二待爬集合中第一个页面标识信息的爬取时限信息超出当前时间,作为所述调整触发条件。更优选地,当所述第二待爬集合中第一个页面标识信息的爬取时限信息超出当前时间时,其中,所述相应调整操作包括以下至少任一项:-减少所述第一待爬集合的容量,例如,减少所述第一待爬集合的所处理的待爬取页面的数量、减少所述第一待爬集合所处理的待爬取页面的类型等;-延长所述第二待爬集合中页面标识信息的爬取时限信息,例如,调整所述第二待爬集合中的爬取时限信息,延长所述第二待爬集合的最晚爬取时间,或是延长所述第二待爬集合的等待时间等;-增加所述待爬页面集合所对应的爬取资源信息,在此,所述爬取资源信息包括但不限于系统处理能力、出口带宽等。对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此夕卜,显然“包括” 一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何 特定的顺序。
权利要求
1.一种用于爬取页面的方法,其中,该方法包括以下步骤: X根据已爬取页面,获取对应候选爬取页面的候选页面标识信息;y根据所述候选爬取页面与所述已爬取页面的关联性信息,将所述候选页面标识信息添加至对应的待爬页面集合,其中,所述待爬页面集合包括一个或多个待爬取页面的页面标识信息; 其中,该方法还包括: a根据所述待爬页面集合,确定待爬取页面的目标爬取标识信息; b爬取所述目标爬取标识信息所对应的目标页面。
2.根据权利要求1所述的方法,其中,该方法还包括: -根据所述目标页面,以及所述已爬取页面,确定对应的数据对象,其中,所述数据对象包括基于所述目标页面和/或所述已爬取页面的页面内容的数据单元。
3.根据权利要求1或2所述的方法,其中,所述待爬页面集合包括基于先进后出策略的第一待爬子集; 其中,所述步骤a包括: -将所述第一待爬子集中时序上最后被添加的页面标识信息,作为所述目标爬取标识信息。
4.根据权利要求3所述的方法,其中,所述步骤I包括: -根据所述候选爬取页面与 所述已爬取页面的关联性信息,检测是否满足将所述候选页面标识信息添加至所述第一待爬子集的第一触发条件; -当满足所述第一触发条件,将所述候选页面标识信息添加至所述第一待爬集合,其中,所述第一待爬集合包括一个或多个待爬取页面的页面标识信息。
5.根据权利要求4所述的方法,其中,所述第一触发条件包括以下至少任一项: -所述关联性信息满足预定关联阈值,且所述候选爬取页面中包含待抓取的数据单元; -所述关联性信息满足预定关联阈值,且所述第一待爬子集未满; -所述关联性信息满足预定关联阈值,且所述候选爬取页面满足其他的预定爬取条件。
6.根据权利要求3所述的方法,其中,所述待爬页面集合还包括基于时限处理策略的第二待爬子集; 其中,所述步骤a包括: -当所述第一待爬子集为空时,从所述第二待爬子集中确定所述目标爬取标识信息,其中,所述目标爬取标识信息所对应的爬取时限时间小于或等于当前时间。
7.根据权利要求6所述的方法,其中,所述步骤I包括: -根据所述候选爬取页面与所述已爬取页面的关联性信息,检测是否满足将所述候选页面标识信息添加至所述第二待爬子集的第二触发条件; -当满足所述第二触发条件,将所述候选页面标识信息添加至所述第二待爬集合,其中,所述第二待爬集合包括一个或多个待爬取页面的页面标识信息,以及所述页面标识信息所对应的爬取时限信息。
8.根据权利要求1至7中任一项所述的方法,其中,该方法还包括: -检测是否满足调整所述待爬页面集合的调整触发条件;-当满足所述调整触发条件,对所述待爬页面集合进行相应调整。
9.根据权利要求8所述的方法,其中,所述待爬页面集合包括所述第一待爬集合与所述弟二待爬集合; 其中,所述调整触发条件包括所述第二待爬集合中第一个页面标识信息的爬取时限信息超出当前时间。
10.根据权利要求9所述的方法,其中,所述相应调整操作包括以下至少任一项: -减少所述第一待爬集合的容量; -延长所述第二待爬集合中页面标识信息的爬取时限信息; -增加所述待爬页面集合所对应的爬取资源信息。
11.一种用于爬取页面的爬取设备,其中,该设备包括: 候选标识获取装置,用于根据已爬取页面,获取对应候选爬取页面的候选页面标识信息; 分组装置,用于根据所述候选爬取页面与所述已爬取页面的关联性信息,将所述候选页面标识信息添加至对 应的待爬页面集合,其中,所述待爬页面集合包括一个或多个待爬取页面的页面标识信息; 其中,该设备还包括: 爬取标识获取装置,用于根据所述待爬页面集合,确定待爬取页面的目标爬取标识信息; 爬取装置,用于爬取所述目标爬取标识信息所对应的目标页面。
12.根据权利要求11所述的爬取设备,其中,该设备还包括: 数据确定装置,用于根据所述目标页面,以及所述已爬取页面,确定对应的数据对象,其中,所述数据对象包括基于所述目标页面和/或所述已爬取页面的页面内容的数据单示 ο
13.根据权利要求11或12所述的爬取设备,其中,所述待爬页面集合包括基于先进后出策略的第一待爬子集; 其中,所述爬取标识获取装置用于: -将所述第一待爬子集中时序上最后被添加的页面标识信息,作为所述目标爬取标识信息。
14.根据权利要求13所述的爬取设备,其中,所述分组装置用于: -根据所述候选爬取页面与所述已爬取页面的关联性信息,检测是否满足将所述候选页面标识信息添加至所述第一待爬子集的第一触发条件; -当满足所述第一触发条件,将所述候选页面标识信息添加至所述第一待爬集合,其中,所述第一待爬集合包括一个或多个待爬取页面的页面标识信息。
15.根据权利要求14所述的爬取设备,其中,所述第一触发条件包括以下至少任一项: -所述关联性信息满足预定关联阈值,且所述候选爬取页面中包含待抓取的数据单元; -所述关联性信息满足预定关联阈值,且所述第一待爬子集未满; -所述关联性信息满足预定关联阈值,且所述候选爬取页面满足其他的预定爬取条件。
16.根据权利要求13所述的爬取设备,其中,所述待爬页面集合还包括基于时限处理策略的第二待爬子集; 其中,所述爬取标识获取装置用于: -当所述第一待爬子集为空时,从所述第二待爬子集中确定所述目标爬取标识信息,其中,所述目标爬取标识信息所对应的爬取时限时间小于或等于当前时间。
17.根据权利要求16所述的爬取设备,其中,所述分组装置用于: -根据所述候选爬取页面与所述已爬取页面的关联性信息,检测是否满足将所述候选页面标识信息添加至所述第二待爬子集的第二触发条件; -当满足所述第二触发条件,将所述候选页面标识信息添加至所述第二待爬集合,其中,所述第二待爬集合包括一个或多个待爬取页面的页面标识信息,以及所述页面标识信息所对应的爬取时限信息。
18.根据权利要求11至17中任一项所述的爬取设备,其中,该设备还包括: 检测装置,用于检测是否满足调整所述待爬页面集合的调整触发条件; 调整装置,用于当满足所述调整触发条件,对所述待爬页面集合进行相应调整。
19.根据权利要求18所述的爬取设备,其中,所述待爬页面集合包括所述第一待爬集合与所述第二待爬集合; 其中,所述调整触发条件包括所述第二待爬集合中第一个页面标识信息的爬取时限信息超出当前时间。
20.根据权利要求19所述的爬取设备,其中,所述相应调整操作包括以下至少任一项: -减少所述第一待爬集合的容量; -延长所述第二待爬集合中页面标识信息的爬取时限信息; -增加所述待爬页面集合所对应的爬取资源信息。
全文摘要
本发明的目的是提供一种用于爬取页面的方法与设备。其中,爬取设备根据已爬取页面,获取对应候选爬取页面的候选页面标识信息;根据所述候选爬取页面与所述已爬取页面的关联性信息,将所述候选页面标识信息添加至对应的待爬页面集合,其中,所述待爬页面集合包括一个或多个待爬取页面的页面标识信息;根据所述待爬页面集合,确定待爬取页面的目标爬取标识信息;爬取所述目标爬取标识信息所对应的目标页面。与现有技术相比,本发明通过根据所述关联性信息,有效的控制了爬取的调度行为,以实现爬取调度的可配置性,使得爬取能够目的性的扩散,控制爬虫在网页间移动的方向和速度,提高了垂直爬虫的爬取效率,保证了爬取数据的完整性。
文档编号G06F17/30GK103226568SQ20131007831
公开日2013年7月31日 申请日期2013年3月12日 优先权日2013年3月12日
发明者王江, 刘浩 申请人:北京百度网讯科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1