CN111428115A - 一种网页信息处理方法及装置 - Google Patents
一种网页信息处理方法及装置 Download PDFInfo
- Publication number
- CN111428115A CN111428115A CN202010298878.3A CN202010298878A CN111428115A CN 111428115 A CN111428115 A CN 111428115A CN 202010298878 A CN202010298878 A CN 202010298878A CN 111428115 A CN111428115 A CN 111428115A
- Authority
- CN
- China
- Prior art keywords
- network resource
- resource data
- queue
- captured
- theme
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明提供一种网页信息处理方法及装置,主服务器将获取到的待抓取主题对应的网络资源数据存储到队列中,各个从服务器获取队列中的至少一个网络资源数据,向网络资源数据发送获取请求,接收与网络资源数据对应的网页信息,以实现至少通过各个从服务器抓取与网络资源数据对应的网页信息,从而提高网页信息的抓取效率。并且主服务器在待抓取主题对应的网络资源数据的存储时间达到过期时间后清空队列,以在队列中重新存储更新的待抓取主题对应的网络资源数据,实现对队列中的网络资源数据的定时更新,这样就可以基于变化后的网络资源数据抓取网页信息,实现增量获取网页信息,防止网页信息的重复获取。
Description
技术领域
本发明属于分布式处理技术领域,尤其涉及一种网页信息处理方法及装置。
背景技术
网络爬虫是一种通过在互联网中埋入一个或者多个埋点,通过这些埋点获取URL(Uniform Resource Locator,统一资源定位符)地址,向URL地址发送获取请求以从URL地址中获取网页信息,并从网页信息中提取新的URL地址,向新的URL地址发送获取请求以从新的URL地址中获取网页信息,以此类推,通过不断地获取新的URL地址来获取更多的网页信息。
但是因为互联网中网页信息内容巨大,所以目前通过单一网络爬虫抓取某一网站或某一个类资源的网页信息会存在耗时较大的问题。
发明内容
有鉴于此,本发明的目的在于提供一种网页信息处理方法及装置,用于提高网页信息的抓取效率,且通过过期时间的设置可以定时更新网络资源数据,实现网页信息的增量获取。技术方案如下:
一方面提供一种网页信息处理方法,所述方法包括:
主服务器获取待抓取主题对应的网络资源数据;
所述主服务器将所述待抓取主题对应的网络资源数据存储到队列中;
各个从服务器获取所述队列中的至少一个网络资源数据,向所述网络资源数据发送获取请求,接收与所述网络资源数据对应的网页信息;
所述主服务器在所述待抓取主题对应的网络资源数据的存储时间达到过期时间后清空所述队列,以在所述队列中重新存储更新的待抓取主题对应的网络资源数据。
可选的,所述主服务器将待抓取主题对应的网络资源数据存储到队列中包括:
所述主服务器在获取到任一待抓取主题对应的网络资源数据后,判断所述队列中是否为空;
如果为空,所述主服务器将当前获取到的待抓取主题对应的网络资源数据存储到队列中;
如果不为空,所述主服务器将当前获取到的待抓取主题对应的网络资源数据与所述队列中已存储的网络资源数据进行比对;
若当前获取到的待抓取主题对应的网络资源数据与所述队列中已存储的网络资源数据不同,所述主服务器将当前获取到的待抓取主题对应的网络资源数据存储到队列中;
若当前获取到的待抓取主题对应的网络资源数据与所述队列中已存储的网络资源数据相同,所述主服务器忽略当前获取到的待抓取主题对应的网络资源数据。
可选的,所述方法还包括:所述主服务器按照如下方式中的至少一种方式向所述从服务器发送所述队列中存储的网络资源数据:
方式一、所述主服务器随机选取一个所述从服务器,向所选取的从服务器发送所述网络资源数据;
方式二、所述主服务器以轮询方式向各个所述从服务器发送所述网络资源数据;
方式三、所述主服务器以负载最小方式选取一个所述从服务器,向所选取的从服务器发送所述网络资源数据。
可选的,所述主服务器获取待抓取主题对应的网络资源数据包括:
所述主服务器获取用户输入的待抓取主题对应的第一条网络资源数据;
所述主服务器从所述队列中获取任一条网络资源数据对应的网页信息,并从所述任一条网络资源数据对应的网页信息中提取所述待抓取主题对应的另一条网络资源数据。
另一方面提供一种网页信息处理系统,所述系统包括:主服务器和至少一个从服务器;其中,所述主服务器包括:获取单元、存储单元和清空单元;
所述获取单元,用于获取待抓取主题对应的网络资源数据;
所述存储单元,用于将所述待抓取主题对应的网络资源数据存储到队列中;
各个从服务器,用于获取所述队列中的至少一个网络资源数据,向所述网络资源数据发送获取请求,接收与所述网络资源数据对应的网页信息;
所述清空单元,用于在所述待抓取主题对应的网络资源数据的存储时间达到过期时间后清空所述队列,以使所述存储单元在所述队列中重新存储更新的待抓取主题对应的网络资源数据。
可选的,所述主服务器的存储单元具体用于:
在所述获取单元获取到任一待抓取主题对应的网络资源数据后,判断所述队列中是否为空;
如果为空,将当前获取到的待抓取主题对应的网络资源数据存储到队列中;
如果不为空,将当前获取到的待抓取主题对应的网络资源数据与所述队列中已存储的网络资源数据进行比对;
若当前获取到的待抓取主题对应的网络资源数据与所述队列中已存储的网络资源数据不同,将当前获取到的待抓取主题对应的网络资源数据存储到队列中;
若当前获取到的待抓取主题对应的网络资源数据与所述队列中已存储的网络资源数据相同,忽略当前获取到的待抓取主题对应的网络资源数据。
可选的,所述主服务器还包括发送单元:所述发送单元,用于向所述从服务器发送所述队列中存储的网络资源数据;
所述发送单元按照如下方式中的至少一种方式向所述从服务器发送所述队列中存储的网络资源数据:
方式一、随机选取一个所述从服务器,向所选取的从服务器发送所述网络资源数据;
方式二、以轮询方式向各个所述从服务器发送所述网络资源数据;
方式三、以负载最小方式选取一个所述从服务器,向所选取的从服务器发送所述网络资源数据。
可选的,所述主服务器的获取单元具体用于:
获取用户输入的待抓取主题对应的第一条网络资源数据;
从所述队列中获取任一条网络资源数据对应的网页信息,并从所述任一条网络资源数据对应的网页信息中提取所述待抓取主题对应的另一条网络资源数据。
再一方面提供一种服务器,所述服务器包括处理器和存储器;
所述处理器,用于获取待抓取主题对应的网络资源数据,将所述待抓取主题对应的网络资源数据存储到所述存储器的队列中,以使作为从服务器的服务器获取所述队列中的至少一个网络资源数据,向所述网络资源数据发送获取请求,接收与所述网络资源数据对应的网页信息;
所述处理器,还用于在所述待抓取主题对应的网络资源数据的存储时间达到过期时间后清空所述队列,以在所述队列中重新存储更新的待抓取主题对应的网络资源数据。
再一方面提供一种存储介质,所述存储介质中存储有计算机程序代码,所述计算机程序代码被执行时实现上述网页信息处理方法。
借由上述技术方案,主服务器将获取到的待抓取主题对应的网络资源数据存储到队列中,各个从服务器获取队列中的至少一个网络资源数据,向网络资源数据发送获取请求,接收与网络资源数据对应的网页信息,以实现至少通过各个从服务器抓取与网络资源数据对应的网页信息,从而提高网页信息的抓取效率。并且主服务器在待抓取主题对应的网络资源数据的存储时间达到过期时间后清空队列,以在队列中重新存储更新的待抓取主题对应的网络资源数据,实现对队列中的网络资源数据的定时更新,这样就可以基于变化后的网络资源数据抓取网页信息,实现增量获取网页信息,防止网页信息的重复获取。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的分布式网页信息抓取系统的架构图;
图2是本发明实施例提供的一种网页信息处理方法的流程图;
图3是本发明实施例提供的网页信息处理方法中存储网络资源数据的流程图;
图4是本发明另一实施例提供的一种网页信息处理系统的结构示意图;
图5是本发明另一实施例提供的一种网页信息处理系统的结构示意图;
图6是本发明再一实施例提供的一种服务器的结构示意图。
具体实施方式
目前网页信息可以通过单一的服务器基于网络资源数据(如上述URL)来抓取,但是网页信息的数量巨大,通过单一服务器抓取会耗费大量时间,为此本实施例提供一种分布式网页信息抓取系统,该分布式网页信息抓取系统的架构如图1所示,可以包括:主服务器10、各个从服务器20(图1中以第一从服务器至第n从服务器为例进行说明)、队列30和数据库40。
其中主服务器10用于确定待抓取主题对应的网络资源数据,待抓取主题可以由用户指定,在将待抓取主题对应的网络资源数据存储到队列30之后,各个从服务器20从待机状态变为工作状态,以使能各个从服务器20开始抓取网页信息。主服务器10还可以从队列中获取网络资源数据进行网页信息的抓取。
各个从服务器20可以从队列中获取一个待抓取主题对应的网络资源数据进行网页信息的抓取,而每抓取到一个网页信息,该网页信息中可能携带有其他网络资源数据,则对应的从服务器20可以继续基于携带的其他网络资源数据进行网页信息的再抓取,或者从服务器20可以将携带的其他网络资源数据存储到队列30中,以由各个从服务器20中的一个从服务器20获取后进行网页信息的抓取。在本实施例中队列30可以是一个redis队列,其通过key-value方式存储待抓取主题对应的网络资源数据,其中key对应待抓取主题,value对应网络资源数据,如上述URL。
数据库40则用于永久性存储网页信息,例如数据库40可以是Mongodb数据库,该Mongodb数据库是一个基于分布式文件存储的数据库,通过其可以快速有效存储网页信息。
基于上述分布式网页信息抓取系统,本实施例提供的网页信息处理方法可以由主服务器获取待抓取主题对应的网络资源数据并存储到队列中,以由各个从服务器获取队列中的至少一个网络资源数据进行网页信息的抓取,实现分布式抓取网页信息,从而提高网页信息的抓取效率。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图2,其示出了本发明实施例提供的一种网页信息处理方法的流程图,可以包括以下步骤:
101:主服务器获取待抓取主题对应的网络资源数据。可以理解的是:主服务器和各个从服务器启动之后,各个从服务器处于待机状态,主服务器通过用于存储网络资源数据的队列来监听待抓取主题,在监听到任一待抓取主题之后由主服务器获取所监听到的待抓取主题对应的网络资源数据并存储到队列中,以队列中存储的待抓取主题对应的网络资源数据作为触发从服务器进入工作状态的条件,使能从服务器开始抓取网页信息。
在本实施例中,所监听到的待抓取主题可以是由用户指定,例如用户可以借助终端或主服务器来设定一个自定义主题作为待抓取主题,对此本实施例不再详述。而每次抓取到一条网页信息,所抓取到的网页信息中可能携带有其他网络资源数据,基于此本实施例中,主服务器获取待抓取主题对应的网络资源数据的过程如下:
主服务器获取用户输入的待抓取主题对应的第一条网络资源数据;主服务器从队列中获取任一条网络资源数据对应的网页信息,并从任一条网络资源数据对应的网页信息中提取待抓取主题对应的另一条网络资源数据,由此可知主服务器在获取待抓取主题对应的网络资源数据的同时还可以进行网页信息的抓取。
此处需要说明的一点是:主服务器在获取到每条网络资源数据对应的网页信息之后,其可以将从网页信息中抓取到的网络资源数据存储到队列中,由从服务器基于这条网络资源数据进行网页信息抓取,并由从服务器解析出其抓取到的网页信息中携带的网络资源数据存储到队列中,实现主服务器和从服务器相结合的网页信息的抓取以及网络资源数据的获取,从而实现分布式获取网页信息和网络资源数据。此外对于主服务器来说,其可以获取到多个待抓取主题,由此可以由主服务器和各个从服务器各自负责一个待抓取主题,实现多个待抓取主题的网页信息的并行抓取,当然也可以主服务器和/或从服务器相结合来负责一个待抓取主题,对此本实施例不进行限定。
102:主服务器将待抓取主题对应的网络资源数据存储到队列中。因为主服务器会获取到多条网络资源数据且每条网络资源数据获取到的时机不同,所以本实施例中网络资源数据存储到队列中的一种方式可以是:以先到先出方式存储网络资源数据。在存储网络资源数据时可以以上述key-value方式存储,对此本实施例不进行限定。
103:各个从服务器获取队列中的至少一个网络资源数据,向网络资源数据发送获取请求,接收与网络资源数据对应的网页信息。
在本实施例中,各个从服务器可以主动从队列中获取至少一个网络资源数据,当任一网络资源数据被获取后将该网络资源数据标记为已获取状态,防止被其他从服务器或主服务器再次获取,从而防止网页信息的重复获取。
其中向网络资源数据发送获取请求是指:基于网络资源数据发送获取请求,例如网络资源数据的一种形式可以是但不限于是URL,可以基于URL来发送获取请求,如由从服务器输入访问URL,接收URL对应的网页信息。
在本实施例中,从服务器获取的网络资源数据还可以由主服务器分配,其中主服务器为从服务器分配网络资源数据的方式包括但不限于下述至少一种方式:
方式一、主服务器随机选取一个从服务器,向所选取的从服务器发送网络资源数据。
方式二、主服务器以轮询方式向各个从服务器发送网络资源数据。
方式三、主服务器以负载最小方式选取一个从服务器,向所选取的从服务器发送网络资源数据。
以三个从服务器为例,这三个从服务器分别是从服务器1、从服务器2和从服务器3,则主服务器可以每次发送网络资源数据时从这三个从服务器中选取一个从服务器,如当前随机选中从服务器1,则向从服务器1发送网络资源数据;或者主服务器以从服务器1、从服务器2和从服务器3的方式依次向每个从服务器发送网络资源数据;或者主服务器在每次发送网络资源数据之前,从这三个从服务器中选取一个负载最小的从服务器,向负载最小的从服务器发送网络资源数据。
104:主服务器在待抓取主题对应的网络资源数据的存储时间达到过期时间后清空队列,以在队列中重新存储更新的待抓取主题对应的网络资源数据。
在本实施例中,网络资源数据的存储时间可以以队列中开始存储第一条网络资源数据的时间作为开始时间,从开始时间计时获取网络资源数据的存储时间,若从开始时间计时至当前时间经过的时间(即存储时间)达到过期时间,则可以将队列中的所有网络资源数据删除,所谓存储时间达到过期时间是指存储时间大于过期时间。
在清空队列之后,主服务器可以重新获取待抓取主题对应的网络资源数据,如重新获取其他待抓取主题或者获取队列之前存储的某个待抓取主题的新增的网络资源数据,其中新增的网络资源数据是指在主服务器清空队列之后的时间出现的网络资源数据,如过期时间为一个小时,在10点是队列中存储了100条网络资源数据,在11点时队列被清空且在11点获取到了110条网络资源数据,这110条网络资源数据中包括10点存储至队列中的100条网络资源数据,则可以仅存储除100条网络资源数据之外的10条网络资源数据至队列中,这样可以防止再次获取10点存储的100条网络资源数据对应的网页信息,在节省网络资源的占用同时可以抓取更多的网页信息。
借由上述技术方案,主服务器将获取到的待抓取主题对应的网络资源数据存储到队列中,各个从服务器获取队列中的至少一个网络资源数据,向网络资源数据发送获取请求,接收与网络资源数据对应的网页信息,以实现至少通过各个从服务器抓取与网络资源数据对应的网页信息,从而提高网页信息的抓取效率。并且主服务器在待抓取主题对应的网络资源数据的存储时间达到过期时间后清空队列,以在队列中重新存储更新的待抓取主题对应的网络资源数据,实现对队列中的网络资源数据的定时更新,这样就可以基于变化后的网络资源数据抓取网页信息,实现增量获取网页信息,防止网页信息的重复获取。
此外在主服务器存储网络资源数据到队列的过程中,还可以对当前存储的网络资源数据进行分析以防止相同的网络资源数据多次存储到队列中,以在存储前对网络资源数据进行筛选,进而可以防止多次抓取相同网页信息,其过程如图3所示,可以包括以下步骤:
301:主服务器获取一条待抓取主题对应的网络资源数据。
302:主服务器判断队列中是否为空,如果为空执行步骤303,如果不为空执行步骤304。
303:如果为空,主服务器将当前获取到的待抓取主题对应的网络资源数据存储到队列中。
304:如果不为空,主服务器将当前获取到的待抓取主题对应的网络资源数据与队列中已存储的网络资源数据进行比对,以确定队列中是否已经存储有当前获取到的待抓取主题对应的网络资源数据。
在这里需要说明的一点是:对于不同待抓取主题,可能存在相同的网络资源数据的情况,因此本实施例需要将当前获取的网络资源数据以及网络资源数据对应的待抓取主题与队列中的各条网络资源数据以及各条网络资源数据对应的待抓取主题同时进行比对,如待抓取主题对应的网络资源数据以上述key-value方式存储时,则可以将key-value分别对比来判断。
305:若当前获取到的待抓取主题对应的网络资源数据与队列中已存储的网络资源数据不同,主服务器将当前获取到的待抓取主题对应的网络资源数据存储到队列中。
306:若当前获取到的待抓取主题对应的网络资源数据与队列中已存储的网络资源数据相同,主服务器忽略当前获取到的待抓取主题对应的网络资源数据。其中当前获取到的待抓取主题对应的网络资源数据与队列中已存储的网络资源数据相同表示已存储的网络资源数据中有一条数据是当前获取到的待抓取主题对应的网络资源数据,此时可以忽略当前获取到的待抓取主题对应的网络资源数据,以禁止将当前获取到的待抓取主题对应的网络资源数据存储到队列中,这样队列中存储的网络资源数据都是不同的,降低相同网络资源数据对应的网页信息被重复抓取的可能性。
对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
请参阅图4,其示出本发明另一实施例提供的一种网页信息处理系统的结构示意图,系统包括:主服务器410和至少一个从服务器420。其中,主服务器410包括:获取单元411、存储单元412和清空单元413。
获取单元411,用于获取待抓取主题对应的网络资源数据。
获取单元411的工作过程可以为:获取用户输入的待抓取主题对应的第一条网络资源数据;从队列中获取任一条网络资源数据对应的网页信息,并从任一条网络资源数据对应的网页信息中提取待抓取主题对应的另一条网络资源数据。获取单元411的工作过程说明请参见上述实施例的步骤101,在此不再赘述。
存储单元412,用于将待抓取主题对应的网络资源数据存储到队列中。
存储单元412的工作过程可以为:在获取单元获取到任一待抓取主题对应的网络资源数据后,判断队列中是否为空;如果为空,将当前获取到的待抓取主题对应的网络资源数据存储到队列中;如果不为空,将当前获取到的待抓取主题对应的网络资源数据与队列中已存储的网络资源数据进行比对;若当前获取到的待抓取主题对应的网络资源数据与队列中已存储的网络资源数据不同,将当前获取到的待抓取主题对应的网络资源数据存储到队列中;若当前获取到的待抓取主题对应的网络资源数据与队列中已存储的网络资源数据相同,忽略当前获取到的待抓取主题对应的网络资源数据。存储单元412的工作过程说明请参见上述实施例的步骤102和步骤301-304,在此不再赘述。
各个从服务器420,用于获取队列中的至少一个网络资源数据,向网络资源数据发送获取请求,接收与网络资源数据对应的网页信息。从服务器420的工作过程说明请参见上述实施例的步骤103,在此不再赘述。
清空单元413,用于在待抓取主题对应的网络资源数据的存储时间达到过期时间后清空队列,以使存储单元在队列中重新存储更新的待抓取主题对应的网络资源数据。清空单元413的工作过程说明请参见上述实施例的步骤104,在此不再赘述。
借由上述技术方案,主服务器将获取到的待抓取主题对应的网络资源数据存储到队列中,各个从服务器获取队列中的至少一个网络资源数据,向网络资源数据发送获取请求,接收与网络资源数据对应的网页信息,以实现至少通过各个从服务器抓取与网络资源数据对应的网页信息,从而提高网页信息的抓取效率。并且主服务器在待抓取主题对应的网络资源数据的存储时间达到过期时间后清空队列,以在队列中重新存储更新的待抓取主题对应的网络资源数据,实现对队列中的网络资源数据的定时更新,这样就可以基于变化后的网络资源数据抓取网页信息,实现增量获取网页信息,防止网页信息的重复获取。
请参阅图5,其示出本发明另一实施例提供的一种网页信息处理系统的结构示意图,相比于图4,主服务器410还包括发送单元414。发送单元414,用于向从服务器420发送队列中存储的网络资源数据。
发送单元414按照如下方式中的至少一种方式向从服务器420发送队列中存储的网络资源数据:
方式一、随机选取一个从服务器420,向所选取的从服务器420发送网络资源数据;
方式二、以轮询方式向各个从服务器420发送网络资源数据;
方式三、以负载最小方式选取一个从服务器420,向所选取的从服务器420发送网络资源数据。
发送单元414的工作过程说明请参见上述实施例的步骤103中关于主服务器为从服务器分配网络资源数据的方式的说明,在此不再赘述。
与上述方法实施例相对应,本实施例还提供一种服务器,该服务器可以作为网页信息处理系统中的主服务器,可以包括处理器和存储器。其中处理器,用于获取待抓取主题对应的网络资源数据,将待抓取主题对应的网络资源数据存储到存储器的队列中,以使作为从服务器的服务器获取队列中的至少一个网络资源数据,向网络资源数据发送获取请求,接收与网络资源数据对应的网页信息;处理器,还用于在待抓取主题对应的网络资源数据的存储时间达到过期时间后清空队列,以在队列中重新存储更新的待抓取主题对应的网络资源数据。
在本实施例中,服务器的一种可选结构如图6所示,示出了服务器包括的至少部分组件,其中Scrapy Engine为引擎,也可以称为服务器,负责服务器中各个组件之间的流动,并在相应动作发生时触发事件,如确定待抓取主题之后触发获取待抓取主题对应的网络资源数据等。
Scheduler为调度器,用于从引擎接收数据,如待抓取主题对应的网络资源数据,并将接收到的数据存储到存储器的队列中。
Downloader为下载器,用于负责访问页面,并将能够从页面中获取到的数据反馈给引擎。
Spiders为爬虫中间件,用于分析下载器反馈给引擎的数据,从反馈的数据中提取出与待抓取主题对应的网络资源数据,然后存储至存储器的队列中,以供从服务器调用。
item pipeline为项目管理组件,用于管理网络资源数据,还可以进行持久化操作。
Downloader Middlewares为下载中间件,用于在下载器访问页面过程中进行反爬虫过滤,以提高安全性,其中下载中间件的反爬虫过滤可以采用但不限于:更换访问IP,包装请求头为浏览器信息等。
Spider Middlewares为响应中间件,用于过滤非正常访问信息,例如过滤非200请求,这样非200请求就不需要爬虫中间件进行处理,以节省资源和组件利用效率。
对于服务器中处理器的工作过程,本实施例不再详述。
再一方面提供一种存储介质,存储介质中存储有计算机程序代码,所述计算机程序代码被执行时实现上述网页信息处理方法。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种网页信息处理方法,其特征在于,所述方法包括:
主服务器获取待抓取主题对应的网络资源数据;
所述主服务器将所述待抓取主题对应的网络资源数据存储到队列中;
各个从服务器获取所述队列中的至少一个网络资源数据,向所述网络资源数据发送获取请求,接收与所述网络资源数据对应的网页信息;
所述主服务器在所述待抓取主题对应的网络资源数据的存储时间达到过期时间后清空所述队列,以在所述队列中重新存储更新的待抓取主题对应的网络资源数据。
2.根据权利要求1所述的方法,其特征在于,所述主服务器将待抓取主题对应的网络资源数据存储到队列中包括:
所述主服务器在获取到任一待抓取主题对应的网络资源数据后,判断所述队列中是否为空;
如果为空,所述主服务器将当前获取到的待抓取主题对应的网络资源数据存储到队列中;
如果不为空,所述主服务器将当前获取到的待抓取主题对应的网络资源数据与所述队列中已存储的网络资源数据进行比对;
若当前获取到的待抓取主题对应的网络资源数据与所述队列中已存储的网络资源数据不同,所述主服务器将当前获取到的待抓取主题对应的网络资源数据存储到队列中;
若当前获取到的待抓取主题对应的网络资源数据与所述队列中已存储的网络资源数据相同,所述主服务器忽略当前获取到的待抓取主题对应的网络资源数据。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:所述主服务器按照如下方式中的至少一种方式向所述从服务器发送所述队列中存储的网络资源数据:
方式一、所述主服务器随机选取一个所述从服务器,向所选取的从服务器发送所述网络资源数据;
方式二、所述主服务器以轮询方式向各个所述从服务器发送所述网络资源数据;
方式三、所述主服务器以负载最小方式选取一个所述从服务器,向所选取的从服务器发送所述网络资源数据。
4.根据权利要求1所述的方法,其特征在于,所述主服务器获取待抓取主题对应的网络资源数据包括:
所述主服务器获取用户输入的待抓取主题对应的第一条网络资源数据;
所述主服务器从所述队列中获取任一条网络资源数据对应的网页信息,并从所述任一条网络资源数据对应的网页信息中提取所述待抓取主题对应的另一条网络资源数据。
5.一种网页信息处理系统,其特征在于,所述系统包括:主服务器和至少一个从服务器;其中,所述主服务器包括:获取单元、存储单元和清空单元;
所述获取单元,用于获取待抓取主题对应的网络资源数据;
所述存储单元,用于将所述待抓取主题对应的网络资源数据存储到队列中;
各个从服务器,用于获取所述队列中的至少一个网络资源数据,向所述网络资源数据发送获取请求,接收与所述网络资源数据对应的网页信息;
所述清空单元,用于在所述待抓取主题对应的网络资源数据的存储时间达到过期时间后清空所述队列,以使所述存储单元在所述队列中重新存储更新的待抓取主题对应的网络资源数据。
6.根据权利要求5所述的系统,其特征在于,所述主服务器的存储单元具体用于:
在所述获取单元获取到任一待抓取主题对应的网络资源数据后,判断所述队列中是否为空;
如果为空,将当前获取到的待抓取主题对应的网络资源数据存储到队列中;
如果不为空,将当前获取到的待抓取主题对应的网络资源数据与所述队列中已存储的网络资源数据进行比对;
若当前获取到的待抓取主题对应的网络资源数据与所述队列中已存储的网络资源数据不同,将当前获取到的待抓取主题对应的网络资源数据存储到队列中;
若当前获取到的待抓取主题对应的网络资源数据与所述队列中已存储的网络资源数据相同,忽略当前获取到的待抓取主题对应的网络资源数据。
7.根据权利要求5所述的系统,其特征在于,所述主服务器还包括发送单元:所述发送单元,用于向所述从服务器发送所述队列中存储的网络资源数据;
所述发送单元按照如下方式中的至少一种方式向所述从服务器发送所述队列中存储的网络资源数据:
方式一、随机选取一个所述从服务器,向所选取的从服务器发送所述网络资源数据;
方式二、以轮询方式向各个所述从服务器发送所述网络资源数据;
方式三、以负载最小方式选取一个所述从服务器,向所选取的从服务器发送所述网络资源数据。
8.根据权利要求5所述的系统,其特征在于,所述主服务器的获取单元具体用于:
获取用户输入的待抓取主题对应的第一条网络资源数据;
从所述队列中获取任一条网络资源数据对应的网页信息,并从所述任一条网络资源数据对应的网页信息中提取所述待抓取主题对应的另一条网络资源数据。
9.一种服务器,其特征在于,所述服务器包括处理器和存储器;
所述处理器,用于获取待抓取主题对应的网络资源数据,将所述待抓取主题对应的网络资源数据存储到所述存储器的队列中,以使作为从服务器的服务器获取所述队列中的至少一个网络资源数据,向所述网络资源数据发送获取请求,接收与所述网络资源数据对应的网页信息;
所述处理器,还用于在所述待抓取主题对应的网络资源数据的存储时间达到过期时间后清空所述队列,以在所述队列中重新存储更新的待抓取主题对应的网络资源数据。
10.一种存储介质,其特征在于,所述存储介质中存储有计算机程序代码,所述计算机程序代码被执行时实现如权利要求1至4中任意一项所述的网页信息处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010298878.3A CN111428115A (zh) | 2020-04-16 | 2020-04-16 | 一种网页信息处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010298878.3A CN111428115A (zh) | 2020-04-16 | 2020-04-16 | 一种网页信息处理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111428115A true CN111428115A (zh) | 2020-07-17 |
Family
ID=71556822
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010298878.3A Pending CN111428115A (zh) | 2020-04-16 | 2020-04-16 | 一种网页信息处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111428115A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102982162A (zh) * | 2012-12-05 | 2013-03-20 | 北京奇虎科技有限公司 | 网页信息的获取系统 |
CN103310012A (zh) * | 2013-07-02 | 2013-09-18 | 北京航空航天大学 | 一种分布式网络爬虫系统 |
CN107102997A (zh) * | 2016-02-22 | 2017-08-29 | 北京国双科技有限公司 | 数据爬取方法及装置 |
CN109213824A (zh) * | 2017-06-29 | 2019-01-15 | 北京京东尚科信息技术有限公司 | 数据抓取系统、方法和装置 |
CN109710830A (zh) * | 2018-12-28 | 2019-05-03 | 四川新网银行股份有限公司 | 一种基于浏览器插件的分布式网络爬虫方法及系统 |
CN110417873A (zh) * | 2019-07-08 | 2019-11-05 | 上海鸿翼软件技术股份有限公司 | 一种实现记录网页交互操作的网络信息提取系统 |
CN110866166A (zh) * | 2019-11-14 | 2020-03-06 | 北京京航计算通讯研究所 | 面向海量数据采集的分布式网络爬虫性能优化系统 |
CN110874429A (zh) * | 2019-11-14 | 2020-03-10 | 北京京航计算通讯研究所 | 面向海量数据采集的分布式网络爬虫性能优化方法 |
-
2020
- 2020-04-16 CN CN202010298878.3A patent/CN111428115A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102982162A (zh) * | 2012-12-05 | 2013-03-20 | 北京奇虎科技有限公司 | 网页信息的获取系统 |
CN103310012A (zh) * | 2013-07-02 | 2013-09-18 | 北京航空航天大学 | 一种分布式网络爬虫系统 |
CN107102997A (zh) * | 2016-02-22 | 2017-08-29 | 北京国双科技有限公司 | 数据爬取方法及装置 |
CN109213824A (zh) * | 2017-06-29 | 2019-01-15 | 北京京东尚科信息技术有限公司 | 数据抓取系统、方法和装置 |
CN109710830A (zh) * | 2018-12-28 | 2019-05-03 | 四川新网银行股份有限公司 | 一种基于浏览器插件的分布式网络爬虫方法及系统 |
CN110417873A (zh) * | 2019-07-08 | 2019-11-05 | 上海鸿翼软件技术股份有限公司 | 一种实现记录网页交互操作的网络信息提取系统 |
CN110866166A (zh) * | 2019-11-14 | 2020-03-06 | 北京京航计算通讯研究所 | 面向海量数据采集的分布式网络爬虫性能优化系统 |
CN110874429A (zh) * | 2019-11-14 | 2020-03-10 | 北京京航计算通讯研究所 | 面向海量数据采集的分布式网络爬虫性能优化方法 |
Non-Patent Citations (1)
Title |
---|
黑马程序员: "《解析Python网络爬虫:核心技术、Scrapy框架、分布式爬虫》", 北京理工大学出版社, pages: 241 - 244 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2453911C2 (ru) | Автономное выполнение веб-приложений | |
US9015315B2 (en) | Identification and monitoring of distributed business transactions | |
CN110020062B (zh) | 一种可定制的网络爬虫方法及系统 | |
US20020052952A1 (en) | Service execution method and apparatus | |
US7661036B1 (en) | Cache for collecting events on a monitored computer | |
CN109167840B (zh) | 一种任务推送方法、节点自治服务器及边缘缓存服务器 | |
US8949462B1 (en) | Removing personal identifiable information from client event information | |
CN111046011B (zh) | 日志收集方法、系统、装置、电子设备及可读存储介质 | |
JP2010508581A5 (zh) | ||
CN110417873B (zh) | 一种实现记录网页交互操作的网络信息提取系统 | |
CN109600385B (zh) | 一种访问控制方法及装置 | |
CN111984896A (zh) | 埋点数据采集方法、装置、计算机设备及可读存储介质 | |
CN111741110B (zh) | 一种消息推送系统及方法 | |
JP4764300B2 (ja) | ストリームデータ管理システム、ストリームデータ管理方法およびそのプログラム | |
US9876873B1 (en) | Caching techniques | |
CN114629883B (zh) | 服务请求的处理方法、装置、电子设备及存储介质 | |
CN110347955B (zh) | 一种资源检测方法及装置 | |
CN115622906A (zh) | 一种应用日志抓取系统及方法 | |
US8775484B2 (en) | Data management apparatus and method | |
CN111522836A (zh) | 一种数据查询方法、装置、电子设备及存储介质 | |
CN111125485A (zh) | 基于Scrapy的网站URL爬取方法 | |
CN112653736B (zh) | 一种并行回源方法、装置及电子设备 | |
US8146101B2 (en) | Method of processing notifications provided by a routine, and associated handheld electronic device | |
CN107332703B (zh) | 一种多应用日志的查看方法及装置 | |
CN111338829B (zh) | 远程过程调用服务的调用方法及装置 |
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 |