CN105989151A - 网页抓取方法及装置 - Google Patents
网页抓取方法及装置 Download PDFInfo
- Publication number
- CN105989151A CN105989151A CN201510093164.8A CN201510093164A CN105989151A CN 105989151 A CN105989151 A CN 105989151A CN 201510093164 A CN201510093164 A CN 201510093164A CN 105989151 A CN105989151 A CN 105989151A
- Authority
- CN
- China
- Prior art keywords
- webpage
- webpage capture
- task
- capture
- perform
- 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
- 238000000034 method Methods 0.000 title claims abstract description 61
- 230000009193 crawling Effects 0.000 title abstract 12
- 238000009826 distribution Methods 0.000 claims description 37
- 230000006835 compression Effects 0.000 claims description 16
- 238000007906 compression Methods 0.000 claims description 16
- 239000000284 extract Substances 0.000 claims description 4
- 239000000203 mixture Substances 0.000 claims 1
- 230000008569 process Effects 0.000 description 20
- 238000003860 storage Methods 0.000 description 8
- 238000004590 computer program Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000000712 assembly Effects 0.000 description 2
- 238000000429 assembly Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000004064 recycling Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Landscapes
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开一种网页抓取方法,包括:确定不同任务类型的可以执行的网页抓取任务;分别为不同任务类型的可以执行的网页抓取任务分配抓取资源;利用分配的抓取资源,执行所述可以执行的网页抓取任务。该方法通过给不同任务类型的网页抓取任务分配抓取资源,使得不同任务类型的网页抓取任务能够同时执行,克服了现有技术中存在的网页抓取效率的普遍偏低的问题。本申请还公开一种网页抓取装置。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种网页抓取方法及装置。
背景技术
现有技术中,大部分的网页抓取系统(如Heritrix、Lucene等开源系统)一般都采用分布式的抓取方式进行网页抓取,即在分布式抓取服务器集群环境下,根据用户输入的种子URL以及配置的URL抓取规则,采用抓取服务器执行网页抓取任务的方式进行大规模的网页抓取。一般情况下,针对不同的网页抓取需求,用户需要配置不同的URL抓取规则从而形成不同任务类型的网页抓取任务。
然而,上述网页抓取方式存在的缺陷在于:所有的网页抓取任务直接共享分布式抓取服务器集群的抓取资源(抓取资源为硬件资源和/或网络资源),即,不同任务类型的网页抓取任务不能同时进行,只能排队依序进行。
由于上述缺陷的存在,现有的网页抓取系统的网页抓取效率普遍偏低。
发明内容
本申请实施例提供一种网页抓取方法,用以解决现有技术中网页抓取效率偏低的问题。
本申请实施例提供一种网页抓取装置,用以解决现有技术中网页抓取效率偏低的问题。
本申请实施例提供一种网页抓取方法,包括:
确定不同任务类型的可以执行的网页抓取任务;
分别为不同任务类型的可以执行的网页抓取任务分配抓取资源;
利用分配的抓取资源,执行所述可以执行的网页抓取任务。
本申请实施例提供一种网页抓取装置,包括:
确定模块,用于确定不同任务类型的可以执行的网页抓取任务;
分配模块,用于分别为不同任务类型的可以执行的网页抓取任务分配抓取资源;
抓取模块,用于利用分配的抓取资源,执行所述可以执行的网页抓取任务。
在本申请实施例中,由于不同类型的网页抓取任务能够分配到各自的抓取资源,使得抓取服务器的硬件资源及配置于抓取服务器上的网络资源均能够得到充分、有效的分配和利用,因此本申请提供的网页抓取方法及装置克服了现有技术中存在的网页抓取效率的普遍偏低的问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的一种网页抓取方法;
图2为本申请实施例提供的一种网页抓取方法的一个步骤的具体内容;
图3为本申请实施例提供的一种网页抓取装置。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为本申请实施例提供的一种网页抓取方法,该网页抓取方法在一个分布式实时计算系统(Jstorm)上运行,而Jstorm系统则运行在网页抓取服务器上。Jstorm是一个分布式实时计算系统,类似Hadoop Mapreduce,用户按照规定的编程规范实现一个任务或程序,将任务或程序放到Jstorm上,Jstorm就将任务或程序7*24小时调度起来。本申请实施例提供的网页抓取方法即为一个任务或程序。
本申请实施例提供的一种网页抓取方法,具体包括以下步骤:
S101:确定不同任务类型的可以执行的网页抓取任务。
在本申请实施例中,网页抓取采用分布式的抓取方式,即由多台网页抓取服务器协同工作共同完成网页抓取,并且多台网页抓取服务器可以采用主从式(Master-Slave)的协同工作方式。分布式集群内的多台网页抓取服务器包括一台主网页抓取服务器及若干台从网页抓取服务器。步骤S101可以是由主网页抓取服务器来完成。
在本申请实施例中,用户提交的网页抓取任务内包括了要抓取网页对应的若干统一资源定位符(Uniform Resource Locator,URL)。用户可以根据自己的网页抓取需求来配置网页抓取的类型,从而形成不同任务类型的网页抓取任务。具体地,网页抓取的任务类型由网页抓取任务的抓取规则决定,而抓取规则由网页抓取深度及网页抓取频次两个参数决定。优选地,在本申请实施例中,网页抓取的任务类型包括四种,具体包括:任务类型A:分别为网页抓取频次为一次性抓取,网页抓取深度为一层;任务类型B:网页抓取频次为一次性抓取,网页抓取深度为二层;任务类型C:网页抓取频次为周期性抓取,网页抓取深度为一层;任务类型D:网页抓取频次为周期性抓取,网页抓取深度为二层。
需要进一步说明的是,当网页抓取频次为周期性抓取时,所述抓取规则还包括用户配置的网页抓取的抓取周期,即需要配置crontab表达式来实现定时的网页抓取。当网页抓取深度为二层时,抓取规则还包括用户配置的第二层网页抓取时网页提取时的Xpath表达式。Xpath是一门在XML文档中查找信息的语言。Xpath可用来在XML文档中对元素和属性进行遍历。
在一种实施方式中,请参考图2,步骤S101:确定不同任务类型的可以执行的网页抓取任务,具体包括以下步骤:
S1011:轮询不同任务类型的各个网页抓取任务的运行状态。
在本申请实施例中,各种任务类型包括均包括用户提交的若干个网页抓取任务,上述每种任务类型的若干个网页抓取任务按用户提交的时间顺序,依次排队等待执行,当然每种任务类型内可能包括运行结束的网页抓取任务。轮询不同任务类型的各个网页抓取任务的运行状态由主网页抓取服务器来完成。网页抓取任务的运行状态包括待运行、运行中、运行结束等状态。比如,任务类型A包括若干用户提交网页抓取任务a1、a2、a3、a4等,上述网页抓取任务a1、a2、a3、a4依次排队且分别具有对应的运行状态,网页抓取任务a1处于运行结束状态,网页抓取任务a2、a3、a4处于待运行状态。
S1012:根据网页抓取任务的运行状态,标识出不同任务类型的可以执行的网页抓取任务。
在本申请实施例中,根据每种任务类型的各个网页抓取任务的运行状态及运行顺序来标识每种任务类型的可以执行的网页抓取任务。上述可以执行的网页抓取任务指上一个网页抓取任务已运行结束,将要轮到执行的待运行网页抓取任务。标识出不同任务类型的可以执行的网页抓取任务也是由主网页抓取服务器来完成。继续沿用上例来说明,当网页抓取任务a1处于运行结束状态时,排在网页抓取任务a1后面的网页抓取任务a2就被标识为一个可以执行的网页抓取任务。
通过以上两个步骤,就可以确定不同任务类型的可以执行的网页抓取任务。
S102:分别为不同任务类型的可以执行的网页抓取任务分配抓取资源。
在本申请实施例中,主网页抓取服务器分别为不同任务类型的可以执行的网页抓取任务分配互不冲突的抓取资源。抓取资源具体包括从网页抓取服务器中央处理器创建的线程及配置于从网页抓取服务器上的互联网协议地址(Internet Protocol Address,IP地址)。
主网页抓取服务器针对不同任务类型的网页抓取任务分别分配抓取资源,抓取资源的分配原则按网页抓取任务的任务类型的繁重程度来进行分配。任务类型较为繁重的网页抓取任务,主网页抓取服务器针对此类型的网页抓取任务分配的抓取资源较多,反之,任务类型较为简单的网页抓取任务,主网页抓取服务器针对此类型的网页抓取任务分配的抓取资源则较少。
主网页抓取服务器分别为不同类型的可以执行的网页抓取任务分配若干由不同从网页抓取服务器中央处理器创建的线程。另外,主网页抓取服务器也分别为不同任务类型的可以执行的网页抓取任务分配IP地址给其对应的网页抓取服务器创建的线程来使用。
比如,分布式集群内共有4台从网页抓取服务器,每台从网页抓取服务器具有1个中央处理器(Central Processing Unit,CPU),每台从网页抓取服务器均配置了70个不同的IP地址。主网页抓取服务器可以给任务类型A分配4个进程,上述4个进程分散于4台从网页抓取服务器,每个进程分配4个线程,那么针对任务类型A的网页抓取任务,主网页抓取服务器分配了16个线程来处理。同时,每台从网页抓取服务器上用于进行任务类型A的网页抓取的4个线程可以利用配置于该台网页抓取服务器上的IP地址。当然,任务类型A的一个网页抓取任务是要抓取同一网站上的若干URL对应的网页,那么该从网页抓取服务器上创建的4个线程之间都是在70个不同的IP地址中轮流获取IP地址,并且通过对IP地址加同步锁,防止不同线程之间同一时刻获取到相同的IP地址。
针对任务类型B,主网页抓取服务器可以给任务类型B分配8个进程,每台从网页抓取服务器被分配2个进程,每个进程分配4个线程,那么针对任务类型B的网页抓取任务,主网页抓取服务器分配了32个线程来处理。同时,每台从网页抓取服务器上用于进行任务类型B的网页抓取的8个线程也可以利用配置于该台网页抓取服务器上的IP地址。需要说明的是,任务类型B内的一个网页抓取任务是要抓取不同网站的URL对应的网页。这样,分配在一个从网页抓取服务器上,用于处理任务类型B内网页抓取任务的不同的线程,可以在同一时刻获取相同的IP地址。
因此,配置于一个从网页抓取服务器上的线程包括用于进行任务类型A网页抓取的4个线程及任务类型B网页抓取的8个线程。
当任务类型A及任务类型B各自的网页抓取任务同时进行时,配置于从网页抓取服务器上的一个IP地址,可以被两个不同线程使用,上述两个不同线程分别用于任务类型A及任务类型B各自的网页抓取任务。
由此可见,同一个从网页抓取服务器上配置的IP资源可以供分配于不同类型的网页抓取任务的线程同时使用,也可以供分配于一个网页抓取任务上的不同线程同时使用,且不会相互影响。
任务类型C、D的可以执行的网页抓取任务也可获得各自的抓取资源,包括从网页抓取服务器中央处理器创建的线程及配置于从网页抓取服务器上的IP资源。
S103:利用分配到的抓取资源,执行S101中所述的可以执行的网页抓取任务。
当各个任务类型的可以执行的网页抓取任务得到抓取资源(IP地址及线程)后,各个从网页抓取服务器中央处理器创建的线程使用超文本传输协议(Hypertext transfer protocol,HTTP)访问可以执行的网页抓取任务内的各个URL并获取URL对应的网页。
当然,并非网页抓取任务内的每个URL对应的网页都能顺利抓取,若出现URL对应网页抓取失败时,就将网页抓取失败的URL进行初始化,再利用分配到的抓取资源进行抓取。当网页抓取失败的次数高于预设次数时,则从网页抓取任务内获取下一个URL,进行网页抓取。
需要说明的是,当网页抓取任务的任务类型被配置为网页抓取的深度为二层时,即本申请实施例中任务类型B、D,那么任务类型B、D内URL对应的网页抓取的步骤包括:
先对抓取任务内排在最前面的一个URL对应的网页进行抓取;
读取用户预先配置的第二层网页抓取的Xpath表达式;
在抓取得到的网页上运行预先配置好的Xpath表达式,得到该网页上的若干URL;
对提取到的若干URL进行去重处理;
对经过去重处理后的URL对应的网页进行抓取。
通过以上步骤,就完成任务类型B、D的网页抓取任务的内一个URL的网页抓取。重复上述步骤,网页抓取任务内的其它的URL对应的网页均会被抓取出来。
当可以执行的网页抓取任务完成后,网页抓取服务器将重复上述网页抓取的方法,继续抓取各个任务类型内的可以执行的网页抓取任务。
进一步地,本申请的一种网页抓取方法还包括以下步骤:
S104:将每个已完成的网页抓取任务内的部分URL对应的网页压缩为相应的子压缩文件。
由于网页抓取任务内的URL被分配到不同的从网页抓取服务器进行抓取,因此会先将网页抓取任务内的部分URL对应的网页压缩为相应的子压缩文件,上述子压缩文件分散在不同的从网页抓取服务器上。
S105:将压缩得到的所有分散的子压缩文件合成为一总压缩文件。
通过文件传输的方式,将每个已完成的网页抓取任务的所有子压缩文件合成为一个总压缩文件。
S106:保存总压缩文件至一台服务器上以供创建所述网页抓取任务的用户调取。
图3为本申请实施例提供的一种网页抓取装置结构示意图,具体包括:
确定模块201,用于确定不同任务类型的可以执行的网页抓取任务;
分配模块202,用于分别为不同任务类型的可以执行的网页抓取任务分配抓取资源;
抓取模块203,用于利用分配的抓取资源,执行所述可以执行的网页抓取任务。
进一步地,所述任务类型由网页抓取任务的抓取规则决定。
进一步地,所述抓取规则由网页抓取深度及网页抓取频次决定。
进一步地,所述抓取规则包括:
网页抓取频次为一次性抓取,网页抓取深度为一层;
网页抓取频次为一次性抓取,网页抓取深度为二层;
网页抓取频次为周期性抓取,网页抓取深度为一层;
网页抓取频次为周期性抓取,网页抓取深度为二层。
进一步地,所述网页抓取深度为二层时,所述抓取规则还包括配置第二层网页抓取时网页提取的Xpath表达式。
进一步地,所述网页抓取频次为周期性抓取时,所述抓取规则还包括需要配置网页抓取的抓取周期。
所述确定模块201,具体包括:
查询单元2011,用于轮询不同任务类型的各个网页抓取任务的运行状态;
识别单元2012,用于根据网页抓取任务的运行状态,标识出不同任务类型的可以执行的网页抓取任务。
进一步地,所述运行状态包括:待运行、运行中、运行结束。
进一步地,所述分配模块,具体用于分别为不同任务类型的可以执行的网页抓取任务分配互不冲突的抓取资源。
进一步地,所述抓取资源包括网页抓取服务器处理器创建的线程及配置于网页抓取服务器的IP地址。
进一步地,所述分配模块,具体用于分别为不同类型的可以执行的网页抓取任务分配不同从网页抓取服务器处理器创建的线程。
进一步地,所述分配模块,具体用于分配IP地址给对应的网页抓取服务器创建的线程来使用。
进一步地,所述抓取模块,具体用于调用超文本传输协议访问可以执行的网页抓取任务内的URL并获取URL对应的网页。
进一步地,所述装置还包括:
压缩模块204,用于将每个已完成的网页抓取任务内的部分URL对应的网页压缩为相应的子压缩文件;
集合模块205,用于将压缩得到的所有分散的子压缩文件合成为一总压缩文件;
保存模块206,用于保存总压缩文件至一台服务器上以供创建所述网页抓取任务的用户调取。
在本申请实施例中,由于不同类型的网页抓取任务能够分配到各自的抓取资源,使得抓取服务器的硬件资源及配置于抓取服务器上的网络资源均能够得到充分、有效的分配和利用,因此本申请提供的网页抓取方法及装置克服了现有技术中存在的网页抓取效率的普遍偏低的问题。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (28)
1.一种网页抓取方法,其特征在于,包括:
确定不同任务类型的可以执行的网页抓取任务;
分别为不同任务类型的可以执行的网页抓取任务分配抓取资源;
利用分配的抓取资源,执行所述可以执行的网页抓取任务。
2.如权利要求1所述的方法,其特征在于:所述任务类型由网页抓取任务的抓取规则决定。
3.如权利要求2所述的方法,其特征在于,所述抓取规则由网页抓取深度及网页抓取频次决定。
4.如权利要求3所述的方法,其特征在于,所述抓取规则包括:
网页抓取频次为一次性抓取,网页抓取深度为一层;
网页抓取频次为一次性抓取,网页抓取深度为二层;
网页抓取频次为周期性抓取,网页抓取深度为一层;
网页抓取频次为周期性抓取,网页抓取深度为二层。
5.如权利要求4所述的方法,其特征在于,所述网页抓取深度为二层时,所述抓取规则还包括配置第二层网页抓取时网页提取的Xpath表达式。
6.如权利要求4所述的方法,其特征在于,所述网页抓取频次为周期性抓取时,所述抓取规则还包括需要配置网页抓取的抓取周期。
7.如权利要求1所述的方法,其特征在于,所述确定不同任务类型的可以执行的网页抓取任务,具体包括:
轮询不同任务类型的各个网页抓取任务的运行状态;
根据网页抓取任务的运行状态,标识出不同任务类型的可以执行的网页抓取任务。
8.如权利要求7所述的方法,其特征在于,所述运行状态包括:待运行、运行中、运行结束。
9.如权利要求1所述的方法,其特征在于,所述分别为不同任务类型的可以执行的网页抓取任务分配抓取资源,具体包括:
分别为不同任务类型的可以执行的网页抓取任务分配互不冲突的抓取资源。
10.如权利要求1所述的方法,其特征在于,所述抓取资源包括网页抓取服务器处理器创建的线程及配置于网页抓取服务器上的IP地址。
11.如权利要求10所述的方法,其特征在于,所述分别为不同任务类型的可以执行的网页抓取任务分配抓取资源,具体包括:
分别为不同类型的可以执行的网页抓取任务分配由不同网页抓取服务器处理器创建的线程。
12.如权利要求11所述的方法,其特征在于,所述分别为不同任务类型的可以执行的网页抓取任务分配抓取资源,还包括:
分配IP地址给对应的网页抓取服务器创建的线程来使用。
13.如权利要求1所述的方法,其特征在于,利用分配到的抓取资源,执行所述可以执行的网页抓取任务,具体包括:
调用超文本传输协议访问可以执行的网页抓取任务内的URL并获取URL对应的网页。
14.如权利要求13所述的方法,其特征在于,所述方法还包括:
将每个已完成的网页抓取任务内的部分URL对应的网页压缩为相应的子压缩文件;
将压缩得到的所有分散的子压缩文件合成为一总压缩文件;
保存总压缩文件至一台服务器上以供创建所述网页抓取任务的用户调取。
15.一种网页抓取装置,其特征在于,包括:
确定模块,用于确定不同任务类型的可以执行的网页抓取任务;
分配模块,用于分别为不同任务类型的可以执行的网页抓取任务分配抓取资源;
抓取模块,用于利用分配的抓取资源,执行所述可以执行的网页抓取任务。
16.如权利要求15所述的装置,其特征在于:所述任务类型由网页抓取任务的抓取规则决定。
17.如权利要求16所述的装置,其特征在于,所述抓取规则由网页抓取深度及网页抓取频次决定。
18.如权利要求17所述的装置,其特征在于,所述抓取规则包括:
网页抓取频次为一次性抓取,网页抓取深度为一层;
网页抓取频次为一次性抓取,网页抓取深度为二层;
网页抓取频次为周期性抓取,网页抓取深度为一层;
网页抓取频次为周期性抓取,网页抓取深度为二层。
19.如权利要求18所述的装置,其特征在于,所述网页抓取深度为二层时,所述抓取规则还包括配置第二层网页抓取时网页提取的Xpath表达式。
20.如权利要求18所述的装置,其特征在于,所述网页抓取频次为周期性抓取时,所述抓取规则还包括需要配置网页抓取的抓取周期。
21.如权利要求15所述的装置,其特征在于,所述确定模块,具体包括:
查询单元,用于轮询不同任务类型的各个网页抓取任务的运行状态;
识别单元,用于根据网页抓取任务的运行状态,标识出不同任务类型的可以执行的网页抓取任务。
22.如权利要求21所述的装置,其特征在于,所述运行状态包括:待运行、运行中、运行结束。
23.如权利要求15所述的装置,其特征在于,所述分配模块具体用于分别为不同任务类型的可以执行的网页抓取任务分配互不冲突的抓取资源。
24.如权利要求15所述的装置,其特征在于,所述抓取资源包括网页抓取服务器处理器创建的线程及配置于网页抓取服务器的IP地址。
25.如权利要求24所述的装置,其特征在于,所述分配模块具体用于分别为不同类型的可以执行的网页抓取任务分配不同从网页抓取服务器处理器创建的线程。
26.如权利要求25所述的装置,其特征在于,所述分配模块具体用于分配IP地址给对应的网页抓取服务器创建的线程来使用。
27.如权利要求15所述的装置,其特征在于,所述抓取模块具体用于调用超文本传输协议访问可以执行的网页抓取任务内的URL并获取URL对应的网页。
28.如权利要求15所述的装置,其特征在于,所述装置还包括:
压缩模块,用于将每个已完成的网页抓取任务内的部分URL对应的网页压缩为相应的子压缩文件;
集合模块,用于将压缩得到的所有分散的子压缩文件合成为一总压缩文件;
保存模块,用于保存总压缩文件至一台服务器上以供创建所述网页抓取任务的用户调取。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510093164.8A CN105989151B (zh) | 2015-03-02 | 2015-03-02 | 网页抓取方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510093164.8A CN105989151B (zh) | 2015-03-02 | 2015-03-02 | 网页抓取方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105989151A true CN105989151A (zh) | 2016-10-05 |
CN105989151B CN105989151B (zh) | 2019-09-06 |
Family
ID=57039073
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510093164.8A Active CN105989151B (zh) | 2015-03-02 | 2015-03-02 | 网页抓取方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105989151B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018165839A1 (zh) * | 2017-03-14 | 2018-09-20 | 深圳市博信诺达经贸咨询有限公司 | 分布式爬虫实现方法及系统 |
CN108874925A (zh) * | 2018-05-31 | 2018-11-23 | 深圳市酷达通讯有限公司 | 一种分布式垂直爬虫方法及终端设备 |
CN110851690A (zh) * | 2019-11-14 | 2020-02-28 | 北京计算机技术及应用研究所 | 一种对监测网站进行网络信息采集的方法和装置 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101499096A (zh) * | 2009-03-18 | 2009-08-05 | 北京邮电大学 | 分布式爬虫集群系统 |
US20110320414A1 (en) * | 2010-06-28 | 2011-12-29 | Nhn Corporation | Method, system and computer-readable storage medium for detecting trap of web-based perpetual calendar and building retrieval database using the same |
CN102469132A (zh) * | 2010-11-15 | 2012-05-23 | 北大方正集团有限公司 | 从网站中多个不同ip的服务器抓取网页的方法及系统 |
CN103092999A (zh) * | 2013-02-22 | 2013-05-08 | 人民搜索网络股份公司 | 一种网页抓取周期调整方法和装置 |
CN103310012A (zh) * | 2013-07-02 | 2013-09-18 | 北京航空航天大学 | 一种分布式网络爬虫系统 |
CN103389983A (zh) * | 2012-05-08 | 2013-11-13 | 阿里巴巴集团控股有限公司 | 一种用于网络爬虫系统的网页内容抓取方法及装置 |
CN103514301A (zh) * | 2013-10-24 | 2014-01-15 | 深圳市同洲电子股份有限公司 | 分布式网络爬虫任务调度的方法及系统 |
CN103605764A (zh) * | 2013-11-26 | 2014-02-26 | Tcl集团股份有限公司 | 一种网络爬虫系统及网络爬虫多任务执行和调度方法 |
CN103761279A (zh) * | 2014-01-09 | 2014-04-30 | 北京京东尚科信息技术有限公司 | 一种基于关键词检索的网络爬虫调度方法及系统 |
CN103870329A (zh) * | 2014-03-03 | 2014-06-18 | 同济大学 | 基于加权轮叫算法的分布式爬虫任务调度方法 |
CN103945278A (zh) * | 2013-01-21 | 2014-07-23 | 中国科学院声学研究所 | 一种视频内容及内容源爬取方法 |
CN104077402A (zh) * | 2014-07-04 | 2014-10-01 | 用友软件股份有限公司 | 数据处理方法和数据处理系统 |
CN104252530A (zh) * | 2014-09-10 | 2014-12-31 | 北京京东尚科信息技术有限公司 | 一种单机爬虫抓取方法及系统 |
-
2015
- 2015-03-02 CN CN201510093164.8A patent/CN105989151B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101499096A (zh) * | 2009-03-18 | 2009-08-05 | 北京邮电大学 | 分布式爬虫集群系统 |
US20110320414A1 (en) * | 2010-06-28 | 2011-12-29 | Nhn Corporation | Method, system and computer-readable storage medium for detecting trap of web-based perpetual calendar and building retrieval database using the same |
CN102469132A (zh) * | 2010-11-15 | 2012-05-23 | 北大方正集团有限公司 | 从网站中多个不同ip的服务器抓取网页的方法及系统 |
CN103389983A (zh) * | 2012-05-08 | 2013-11-13 | 阿里巴巴集团控股有限公司 | 一种用于网络爬虫系统的网页内容抓取方法及装置 |
CN103945278A (zh) * | 2013-01-21 | 2014-07-23 | 中国科学院声学研究所 | 一种视频内容及内容源爬取方法 |
CN103092999A (zh) * | 2013-02-22 | 2013-05-08 | 人民搜索网络股份公司 | 一种网页抓取周期调整方法和装置 |
CN103310012A (zh) * | 2013-07-02 | 2013-09-18 | 北京航空航天大学 | 一种分布式网络爬虫系统 |
CN103514301A (zh) * | 2013-10-24 | 2014-01-15 | 深圳市同洲电子股份有限公司 | 分布式网络爬虫任务调度的方法及系统 |
CN103605764A (zh) * | 2013-11-26 | 2014-02-26 | Tcl集团股份有限公司 | 一种网络爬虫系统及网络爬虫多任务执行和调度方法 |
CN103761279A (zh) * | 2014-01-09 | 2014-04-30 | 北京京东尚科信息技术有限公司 | 一种基于关键词检索的网络爬虫调度方法及系统 |
CN103870329A (zh) * | 2014-03-03 | 2014-06-18 | 同济大学 | 基于加权轮叫算法的分布式爬虫任务调度方法 |
CN104077402A (zh) * | 2014-07-04 | 2014-10-01 | 用友软件股份有限公司 | 数据处理方法和数据处理系统 |
CN104252530A (zh) * | 2014-09-10 | 2014-12-31 | 北京京东尚科信息技术有限公司 | 一种单机爬虫抓取方法及系统 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018165839A1 (zh) * | 2017-03-14 | 2018-09-20 | 深圳市博信诺达经贸咨询有限公司 | 分布式爬虫实现方法及系统 |
CN108874925A (zh) * | 2018-05-31 | 2018-11-23 | 深圳市酷达通讯有限公司 | 一种分布式垂直爬虫方法及终端设备 |
CN110851690A (zh) * | 2019-11-14 | 2020-02-28 | 北京计算机技术及应用研究所 | 一种对监测网站进行网络信息采集的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105989151B (zh) | 2019-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103605764B (zh) | 一种网络爬虫系统及网络爬虫多任务执行和调度方法 | |
CN104102475B (zh) | 分布式并行任务处理的方法、装置及系统 | |
CN103645939B (zh) | 一种图片抓取的方法和系统 | |
CN106406987A (zh) | 一种集群中的任务执行方法及装置 | |
CN104750690B (zh) | 一种查询处理方法、装置及系统 | |
CN103338252B (zh) | 一种分布式数据库并发存储虚拟请求机制的实现方法 | |
CN103207785B (zh) | 数据下载请求的处理方法、装置及系统 | |
CN102541858B (zh) | 基于映射和规约的数据均衡性处理方法、装置及系统 | |
CN107071009A (zh) | 一种负载均衡的分布式大数据爬虫系统 | |
CN110020043B (zh) | 页面爬取方法、装置、存储介质及处理器 | |
CN107729564A (zh) | 一种分布式的聚焦网络爬虫网页爬取方法及系统 | |
CN106598705A (zh) | 一种异步任务的调度方法、装置、系统以及电子设备 | |
CN106534244A (zh) | 一种代理资源的调度方法及装置 | |
CN108268372A (zh) | Mock测试处理方法、装置、存储介质和计算机设备 | |
CN103713935B (zh) | 一种在线管理Hadoop集群资源的方法和装置 | |
CN104199912B (zh) | 一种任务处理的方法及装置 | |
CN109726004A (zh) | 一种数据处理方法及装置 | |
CN109408286A (zh) | 数据处理方法、装置、系统、计算机可读存储介质 | |
CN107329991A (zh) | 一种列表页访问和展示方法及其系统 | |
CN107729514A (zh) | 一种基于hadoop的副本放置节点确定方法及装置 | |
CN107180050A (zh) | 一种数据抓取系统及方法 | |
CN106874109A (zh) | 一种分布式作业分发处理方法及系统 | |
CN105989151A (zh) | 网页抓取方法及装置 | |
CN110020046A (zh) | 一种数据抓取方法及装置 | |
Shobana et al. | Nature inspired preemptive task scheduling for load balancing in cloud datacenter |
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 | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20240318 Address after: # 04-08, Lai Zanda Building 1, 51 Belarusian Road, Singapore Patentee after: Alibaba Singapore Holdings Ltd. Country or region after: Singapore Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands Patentee before: ALIBABA GROUP HOLDING Ltd. Country or region before: Cayman Islands |
|
TR01 | Transfer of patent right |