网页筛选方法及装置
技术领域
本发明涉及信息检索技术领域,特别是涉及一种适用于网络爬虫系统的网页筛选方法及装置。
背景技术
作为搜索引擎重要组成的网络爬虫为一个自动提取网页的程序,其为搜索引擎从互联网上下载网页。为了满足搜索引擎快速而全面覆盖互联网有价值信息的需求,爬虫每天需要抓取大量网页。
由于互联网中存在海量的网页信息,而网络爬虫的抓取能力有限,因此,为了筛选出较高网页质量的网页,现有的网页筛选方式包括:网络爬虫在抓取一个或若干种子网页后,抽取种子网页上的URL信息,依据当前分数计算标准计算出各URL信息对应的网页质量分数,并选择网页质量分数较高的部分URL信息(网页质量分数超过某一分数阈值的URL信息,或者,URL信息的数量在网络爬虫的能力范围内)作为目标抓取网页。而在筛选出目标抓取网页后,网络爬虫抓取目标抓取网页即可。
但是,由于现有网页筛选方式着重于网页质量,可能使得某些网络站点中包括较多的目标抓取网页,导致超过网络站点对应的抓取压力;而另一些网络站点中包括较少或没有目标抓取网页。而当目标抓取网页数量超过抓取压力时,将会发生封禁或导致抓取失败。其中,所谓网络站点的抓取压力为单位时间内网络站点允许网络爬虫抓取本站点中网页的最大数量。
可见,在保证网页质量的前提下,现有网页筛选方法会带来较高的网页抓取失败风险或站点封禁风险,最终导致抓取网页的成功率较低。
发明内容
为解决上述技术问题,本发明实施例提供了一种网页筛选方法及装置,以在保证网页质量的前提下,提高抓取网页的成功率,技术方案如下:
第一方面,本发明实施例提供了一种网页筛选方法,适用于网络爬虫系统,所述方法包括:
抓取预设种子网页;
获取所述预设种子网页中所包含的URL信息;
计算所述URL信息对应的网页质量分数;
按照预设网络地址信息,将所述URL信息划分到相应的候选集合中,其中,同一候选集合的URL信息对应同一网络地址;
从每一候选集合中筛选出数量不超过相应预设压力配额的URL信息,其中,筛选出的URL信息对应的网页质量分数不低于相应候选集合中任意剩余URL信息对应的网页质量分数,所述预设压力配额为依据网络地址所对应的抓取压力值确定出;
将筛选出的URL信息对应的网页作为目标抓取网页。
其中,当首次抓取网页时,抓取预设种子网页包括:抓取默认导航页。
其中,当非首次抓取网页时,抓取预设种子网页包括:抓取之前所确定出的目标抓取网页。
其中,所述预设网络地址信息包括:
网页模式信息、站点信息或主域信息。
其中,从一候选集合中筛选出数量不超过相应预设压力配额的URL信息,包括:
将候选集合中URL信息按照网页质量分数进行降序排列;
将已筛选数量初始化为0;
按照降序序列,依次处理所述候选集合中的URL信息:
判断已筛选数量是否不大于预设压力配额,如果是,将当前的URL信息作为筛选出的URL信息,并将已筛选数量加1;否则,结束对所述候选集合中URL信息的筛选处理。
其中,从一候选集合中筛选出数量不超过相应预设压力配额的URL信息,包括:
判断候选集合中所包含URL信息的数量是否不超过相应预设压力配额;如果是,将所述候选集合中所包含的所有URL信息作为筛选出的URL信息;
否则,
将所述候选集合中URL信息按照网页质量分数进行降序排列;
将已筛选数量初始化为0;
按照降序序列,依次处理所述候选集合中的URL信息:
判断已筛选数量是否不大于预设压力配额,如果是,将当前的URL信息作为筛选出的URL信息,并将已筛选数量加1;否则,结束对所述候选集合中URL信息的筛选处理。
第二方面,本发明实施例还提供了一种网页筛选装置,适用于网络爬虫系统,所述网页筛选装置包括:
种子网页抓取模块,用于抓取预设种子网页;
URL信息确定模块,用于获取所述预设种子网页中所包含的URL信息;
网页质量分数确定模块,用于计算所述URL信息对应的网页质量分数;
候选集合确定模块,用于按照预设网络地址信息,将所述URL信息划分到相应的候选集合中,其中,同一候选集合的URL信息对应同一网络地址;
URL信息筛选模块,用于从每一候选集合中筛选出数量不超过相应预设压力配额的URL信息,其中,筛选出的URL信息对应的网页质量分数不低于相应候选集合中任意剩余URL信息对应的网页质量分数,所述预设压力配额为依据网络地址所对应的抓取压力值确定出;
目标抓取网页确定模块,用于将筛选出的URL信息对应的网页作为目标抓取网页。
其中,所述种子网页抓取模块,包括:
第一种子网页抓取单元,用于当首次抓取网页时,抓取默认导航页。
其中,所述种子网页抓取模块,包括:
第二种子网页抓取单元,用于当非首次抓取网页时,抓取之前所确定出的目标抓取网页。
其中,所述URL信息筛选模块包括:第一URL信息筛选单元;
所述第一URL信息筛选单元从一候选集合中筛选出数量不超过相应预设压力配额的URL信息,包括:
将候选集合中URL信息按照网页质量分数进行降序排列;
将已筛选数量初始化为0;
按照降序序列,依次处理所述候选集合中的URL信息:
判断已筛选数量是否不大于预设压力配额,如果是,将当前的URL信息作为筛选出的URL信息,并将已筛选数量加1;否则,结束对所述候选集合中URL信息的筛选处理。
其中,所述URL信息筛选模块包括:第二URL信息筛选单元;
所述第二URL信息筛选单元从一候选集合中筛选出数量不超过相应预设压力配额的URL信息,包括:
判断候选集合中所包含URL信息的数量是否不超过相应预设压力配额;如果是,将所述候选集合中所包含的所有URL信息作为筛选出的URL信息;
否则,
将所述候选集合中URL信息按照网页质量分数进行降序排列;
将已筛选数量初始化为0;
按照降序序列,依次处理所述候选集合中的URL信息:
判断已筛选数量是否不大于预设压力配额,如果是,将当前的URL信息作为筛选出的URL信息,并将已筛选数量加1;否则,结束对所述候选集合中URL信息的筛选处理。
与现有技术相比,本发明实施例所提供的技术方案中,按照预设网络地址信息,将预设种子网页所包含的URL信息划分到相应的候选集合中,并从每一候选集合中筛选出数量不超过相应预设压力配额的URL信息,其中,筛选出的URL信息对应的网页质量分数不低于相应候选集合中任意剩余URL信息对应的网页质量分数,所述预设压力配额为依据网络地址所对应的抓取压力值确定出。可见,通过利用本方案,实现了在保证网页质量的前提下,降低网页抓取失败风险或站点封禁风险,进而提高抓取网页的成功率的目的。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例所提供的一种网页筛选方法的第一种流程图;
图2为本发明实施例所提供的一种网页筛选方法的第二种流程图;
图3为本发明实施例所提供的一种网页筛选方法的第三种流程图;
图4为本发明实施例所提供的一种网页筛选装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
现有技术中,在保证网页质量的前提下,网页筛选方法会带来较高的网页抓取失败风险或站点封禁风险,最终导致抓取网页的成功率较低。因此,为了解决现有技术问题,本发明实施例提供了一种网页筛选方法及装置。
下面首先对本发明实施例所提供的一种网页筛选方法进行介绍。
需要说明的是,本发明实施例所提供的一种网页筛选方法适用于网络爬虫系统。
如图1所示,一种网页筛选方法,可以包括:
S101,抓取预设种子网页;
当网络爬虫系统中的网络爬虫需要抓取网页时,首先抓取预设种子网页,进而根据预设种子网页确定出所需的目标抓取网页,最终使得网络爬虫在预设时间段内对所确定出的目标抓取网页进行抓取与分析处理。其中,可以理解的是,网络爬虫周期性的抓取网页,而作为一周期的预设时间段可以根据实际应用需求进行设定,例如:半小时、1小时、半天等;并且,在实际应用中,网络爬虫可以抓取一个或若干预设种子网页。
需要说明的是,当首次抓取网页时,抓取预设种子网页,可以包括:抓取默认导航页;而当非首次抓取网页时,抓取预设种子网页,可以包括:抓取之前所确定出的目标抓取网页。
其中,所述默认导航页可以为:360站点导航页、123站点导航页或其他站点的导航页,当然,上述导航页仅仅作为示例,并不应该构成对本发明实施例的限定。
S102,获取所述预设种子网页中所包含的URL信息;
在抓取到所述预设种子网页后,可以分析所述预设种子网页,进而获得所述预设种子网页中所包含的URL信息。可以理解的是,所述预设种子网页中所包含的URL信息可以包括:所述预设种子网页自身对应的URL信息。
S103,计算所述URL信息对应的网页质量分数;
在获取到所述预设种子网页中所包含的URL信息后,可以按照所设定的计算方式,计算所述URL信息对应的网页质量分数,即预先计算所述URL信息对应网页的网页质量分数。
其中,现有技术中对于一网页的网页质量分数的计算方式可以包括如下3种:
(1)基于网页链接关系:如PageRank、HITS等算法;
(2)基于网页内容:通过提取网页特征并使用分类、聚类等机器学习方法对网页特征统计或回归分析;
(3)基于用户行为分析:使用机器学习方法对浏览、点击等用户行为进行分析。
本发明实施例中,由于在抓取网页之前,预先确定出网页的网页质量分数,因此,可以采用方式(1)中的PageRank、HITS等算法,依据URL信息确定出相应的网页质量分数。本领域技术人员可以理解的是,计算URL信息对应网页质量分数所需的参数可以根据实际需求确定。
S104,按照预设网络地址信息,将所述URL信息划分到相应的候选集合中;
其中,同一候选集合的URL信息对应同一网络地址。需要说明的是,所述预设网络地址信息至少可以包括:网页模式(url pattern)信息、站点(host)信息或主域(domain)信息。也就是,在实际应用中,可以根据实际应用需求,将对应同一网页模式的URL信息划分到一候选集合中,或者,将对应同一站点的URL信息划分到一候选集合中,或者,将对应同一主域的URL信息划分到一候选集合中。
本领域技术人员可以理解的是,上述的网络地址信息仅仅作为一种示例,并不应该构成对本发明实施例的限定。
S105,从每一候选集合中筛选出数量不超过相应预设压力配额的URL信息;
其中,筛选出的URL信息对应的网页质量分数不低于相应候选集合中任意剩余URL信息对应的网页质量分数,所述预设压力配额为依据网络地址所对应的抓取压力值确定出。
可以理解的是,抓取压力值可以通过压力探测等方式获得;并且,网页模式对应的抓取压力值为单位时间内允许网络爬虫抓取本网页模式中网页的最大数量;站点对应的抓取压力值为单位时间内允许网络爬虫抓取本站点中网页的最大数量;主域对应的抓取压力值为单位时间内允许网络爬虫抓取本主域中网页的最大数量。而对于一预设时间段而言,其对应的预设压力配额为:网络地址所对应的抓取压力值*(预设时间段/单位时间)。同时,由于网络地址对应的抓取压力可以不同,因此不同候选集合所对应的预设压力配额可以不同。
其中,本实施例中,从一候选集合中筛选出数量不超过相应预设压力配额的URL信息,如图2所示,可以包括:
S201,将候选集合中URL信息按照网页质量分数进行降序排列;
S202,将已筛选数量初始化为0;
S203,按照降序序列,利用预设筛选方式依次处理所述候选集合中的URL信息,以完成URL信息的筛选。
其中,利用预设筛选方式处理所述候选集合中的URL信息,可以包括:
判断已筛选数量是否不大于预设压力配额,如果是,将当前的URL信息作为筛选出的URL信息,并将已筛选数量加1;否则,结束对所述候选集合中URL信息的筛选处理。
可以理解的是,通过上述方式,筛选出了候选集合中网页质量分数较高的部分URL信息,以此保证了URL信息的数量不超出预设压力配额以及网页质量。
在本发明的另一实施例中,从一候选集合中筛选出数量不超过相应预设压力配额的URL信息,如图3所示,可以包括:
S301,判断候选集合中所包含URL信息的数量是否不超过相应预设压力配额;如果是,执行步骤S302;否则,执行步骤S303;
S302,将所述候选集合中所包含的所有URL信息作为筛选出的URL信息;
S303,将所述候选集合中URL信息按照网页质量分数进行降序排列;
S304,将已筛选数量初始化为0;
S305,按照降序序列,利用预设筛选方式依次处理所述候选集合中的URL信息,以完成URL信息的筛选。
其中,利用预设筛选方式处理所述候选集合中的URL信息,可以包括:
判断已筛选数量是否不大于预设压力配额,如果是,将当前的URL信息作为筛选出的URL信息,并将已筛选数量加1;否则,结束对所述候选集合中URL信息的筛选处理。
可以理解的是,上述从一候选集合中筛选出数量不超过相应预设压力配额的URL信息的方式仅仅作为示例,并不应该构成对本发明实施例的限定。
S106,将筛选出的URL信息对应的网页作为目标抓取网页。
在为每一候选集合筛选出URL信息后,可以将筛选出的URL信息对应的网页作为目标抓取网页。
可以理解的是,在确定出目标抓取网页后,网络爬虫可以在预设时间段内抓取目标抓取网页,进而实现网络爬虫的网页抓取与分析。
可以理解的是,步骤S103和步骤S104的执行顺序并不局限于本实施例,例如步骤S104可以先于步骤S103,或者,步骤S103与步骤S104同时执行,这都是合理的。
与现有技术相比,本发明实施例所提供的技术方案中,按照预设网络地址信息,将预设种子网页所包含的URL信息划分到相应的候选集合中,并从每一候选集合中筛选出数量不超过相应预设压力配额的URL信息,其中,筛选出的URL信息对应的网页质量分数不低于相应候选集合中任意剩余URL信息对应的网页质量分数,所述预设压力配额为依据网络地址所对应的抓取压力值确定出。可见,通过利用本方案,实现了在保证网页质量的前提下,降低网页抓取失败风险或站点封禁风险,进而提高抓取网页的成功率的目的。
通过以上的方法实施例的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:只读存储器(ROM)、随机存取存储器(RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
相应于上面的方法实施例,本发明实施例还提供一种网页筛选装置,适用于网络爬虫系统,如图4所示,所述网页筛选装置可以包括:
种子网页抓取模块410,用于抓取预设种子网页;
URL信息确定模块420,用于获取所述预设种子网页中所包含的URL信息;
网页质量分数确定模块430,用于计算所述URL信息对应的网页质量分数;
候选集合确定模块440,用于按照预设网络地址信息,将所述URL信息划分到相应的候选集合中,其中,同一候选集合的URL信息对应同一网络地址;
URL信息筛选模块450,用于从每一候选集合中筛选出数量不超过相应预设压力配额的URL信息,其中,筛选出的URL信息对应的网页质量分数不低于相应候选集合中任意剩余URL信息对应的网页质量分数,所述预设压力配额为依据网络地址所对应的抓取压力值确定出;
目标抓取网页确定模块460,用于将筛选出的URL信息对应的网页作为目标抓取网页。
与现有技术相比,本发明实施例所提供的技术方案中,按照预设网络地址信息,将预设种子网页所包含的URL信息划分到相应的候选集合中,并从每一候选集合中筛选出数量不超过相应预设压力配额的URL信息,其中,筛选出的URL信息对应的网页质量分数不低于相应候选集合中任意剩余URL信息对应的网页质量分数,所述预设压力配额为依据网络地址所对应的抓取压力值确定出。可见,通过利用本方案,实现了在保证网页质量的前提下,降低网页抓取失败风险或站点封禁风险,进而提高抓取网页的成功率的目的。
其中,所述种子网页抓取模块410,可以包括:
第一种子网页抓取单元,用于当首次抓取网页时,抓取默认导航页。
其中,所述种子网页抓取模块410,可以包括:
第二种子网页抓取单元,用于当非首次抓取网页时,抓取之前所确定出的目标抓取网页。
其中,所述URL信息筛选模块450,可以包括:第一URL信息筛选单元;
所述第一URL信息筛选单元从一候选集合中筛选出数量不超过相应预设压力配额的URL信息,包括:
将候选集合中URL信息按照网页质量分数进行降序排列;
将已筛选数量初始化为0;
按照降序序列,依次处理所述候选集合中的URL信息:
判断已筛选数量是否不大于预设压力配额,如果是,将当前的URL信息作为筛选出的URL信息,并将已筛选数量加1;否则,结束对所述候选集合中URL信息的筛选处理。
其中,所述URL信息筛选模块450,可以包括:第二URL信息筛选单元;
所述第二URL信息筛选单元从一候选集合中筛选出数量不超过相应预设压力配额的URL信息,包括:
判断候选集合中所包含URL信息的数量是否不超过相应预设压力配额;如果是,将所述候选集合中所包含的所有URL信息作为筛选出的URL信息;
否则,
将所述候选集合中URL信息按照网页质量分数进行降序排列;
将已筛选数量初始化为0;
按照降序序列,依次处理所述候选集合中的URL信息:
判断已筛选数量是否不大于预设压力配额,如果是,将当前的URL信息作为筛选出的URL信息,并将已筛选数量加1;否则,结束对所述候选集合中URL信息的筛选处理。
对于装置或系统实施例而言,由于其基本相应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置或系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,在没有超过本申请的精神和范围内,可以通过其他的方式实现。当前的实施例只是一种示范性的例子,不应该作为限制,所给出的具体内容不应该限制本申请的目的。例如,所述单元或子单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或多个子单元结合一起。另外,多个单元可以或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
另外,所描述系统,装置和方法以及不同实施例的示意图,在不超出本申请的范围内,可以与其它系统,模块,技术或方法结合或集成。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
以上所述仅是本发明的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。