CN106339385B - 抓取网页的系统、网页抓取节点分配方法、抓取网页的方法 - Google Patents

抓取网页的系统、网页抓取节点分配方法、抓取网页的方法 Download PDF

Info

Publication number
CN106339385B
CN106339385B CN201510397674.4A CN201510397674A CN106339385B CN 106339385 B CN106339385 B CN 106339385B CN 201510397674 A CN201510397674 A CN 201510397674A CN 106339385 B CN106339385 B CN 106339385B
Authority
CN
China
Prior art keywords
webpage
node
capturing
grabbing
web page
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.)
Active
Application number
CN201510397674.4A
Other languages
English (en)
Other versions
CN106339385A (zh
Inventor
苗欣
韩陆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Singapore Holdings Pte Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201510397674.4A priority Critical patent/CN106339385B/zh
Publication of CN106339385A publication Critical patent/CN106339385A/zh
Application granted granted Critical
Publication of CN106339385B publication Critical patent/CN106339385B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; 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

抓取网页的系统、网页抓取节点分配方法、抓取网页的方法
技术领域
本申请涉及一种抓取网页的系统。本申请还涉及一种网页抓取节点分配方法及装置,以及抓取网页的方法及装置。本申请还涉及两种电子设备。
背景技术
随着国际互联网的迅速发展,国际互联网成为大量信息的载体。为利用国际互联网上的资源,有些情况下需要同时大量地访问下载国际互联网上的网页,访问下载网页也被称为抓取网页。现有的大规模抓取网页资源的系统是网络爬虫系统,作为一个自动大规模抓取网页的系统,它从一个或若干初始网页的统一资源定位符开始,获得初始网页上的统一资源定位符,并将其放入待抓取网页的队列里,然后逐一抓取网页的队列里的网页。在抓取网页的过程中,不断从当前网页上获取新的统一资源定位符加入到待抓取网页的队列,直到满足系统的一定停止条件。另外,所有被网络爬虫系统抓取的网页将会被系统存贮,进行一定的分析、过滤,并建立索引,以便之后的查询和检索。现有的抓取网页的网络爬虫系统的基本结构如图1所示。可以看出,现有的自动大规模抓取网页的方法关注的是对于网络资源的可持续性抓取,网络爬虫系统抓取网页的方法抓取的网页内容需要经过分析处理然后通过特定的接口才能被用户访问到,这就使得获得的网页内容不能实时的被用户获取。而对于需要实时地抓取指定的网页的情况,由于现有的网络爬虫系统需要对抓取的网页进行分析,过滤,索引等处理,有可能会导致抓取网页内容耗时过长甚至返回网页内容失败的情况发生。
而通常执行实时获取网页的单独的计算机由于性能的限制如处理器的处理能力,接口承受能力或存储的容量的限制,导致无法承受大规模并发网页抓取的操作。
综上所述,目前还缺少一种成熟的大规模并发抓取网页的系统及方法。
发明内容
本申请提供一种抓取网页的系统,以解决现有自动大规模抓取网页的方法耗时长甚至返回网页内容失败的问题。此外,本申请还提供一种网页抓取节点分配方法及装置。本申请还提供一种抓取网页的方法及装置。本申请还提供两种相关的电子设备。
本申请提供一种抓取网页的系统,包括至少一个主控节点,至少一个网页抓取节点和通讯网络,所述主控节点、网页抓取节点之间通过通讯网络连接,其特征在于,
主控节点接收对网页抓取节点的获取请求,从所管理维护的可用网页抓取节点列表内,以设定的规则为不同的获取网页抓取节点的请求选择分配网页抓取节点,向获取网页抓取节点的请求方输出所选择分配的网页抓取节点的信息;
网页抓取节点接收抓取网页的请求,执行网页抓取操作,输出抓取到的网页。
可选地,还包括缓存设备,用于接收并存储所述网页抓取节点抓取的网页源代码,供各个网页抓取节点访问;所述缓存设备还存储各个抓取节点所在的网络地址访问不同网络主机的最近一次的时间信息。
可选地,所述缓存设备中存储的网页源代码对应其统一资源定位符存储。
可选地,所述缓存设备中存储的网页源代码在超过设定的时长阈值之后被删除。
可选地,所述网页抓取节点按照设定的时间间隔将自己的身份识别信息发送给所述主控节点,所述主控节点收到该网页抓取节点所发送的身份识别信息后,根据其中包含的网页抓取节点的身份识别信息,判断该网页抓取节点是否已经存在于可用网页抓取节点列表内,若否,则将该网页抓取节点记录到可用网页抓取节点列表内。
可选地,所述主控节点按照设定的时间间隔向可用网页抓取节点列表内的所有网页抓取节点发送检测信息,并接收来自这些网页抓取节点的应答,对于没有应答的网页抓取节点,则从其所管理维护的所述可用网页抓取节点列表内删除该网页抓取节点的记录。
可选地,所述身份识别信息包括网页抓取节点所在的网络地址和进程端口号。
本申请提供一种网页抓取节点分配方法,由包括至少一个主控节点和至少一个网页抓取节点的抓取网页的系统中的主控节点执行下述步骤;
接收获取网页抓取节点的请求;
根据设定的规则,在所管理维护的可用网页抓取节点列表中,为不同的请求选择分配相应的网页抓取节点;
向提出请求方返回选择分配的网页抓取节点的地址信息。
可选地,所述主控节点接收网页抓取节点按照设定的时间间隔发送的所述网页抓取节点自身的身份识别信息,该主控节点根据所述身份识别信息,判断该网页抓取节点是否已经存在于所述主控节点所管理维护的可用网页抓取节点列表中,若否,则将该网页抓取节点记录到可用网页抓取节点列表中。
可选地,所述主控节点按照设定的时间间隔向可用网页抓取节点列表内的所有网页抓取节点发送检测信息,并接收来自这些网页抓取节点的应答,对于没有应答的网页抓取节点,则从其所管理维护的所述可用网页抓取节点列表内删除该网页抓取节点的记录。
本申请提供一种抓取网页的方法,应用于抓取网页的系统中,所述抓取网页的系统包括至少一个网页抓取节点,所述方法包括:
所述网页抓取节点接收抓取指定网页的命令;
根据所述抓取指定网页的命令中包含的统一资源定位符,抓取指定网页的源代码;
将所获得的源代码返回抓取指定网页的命令的请求方。
可选地,所述抓取网页的系统还包括缓存设备,所述根据所述抓取指定网页的命令中包含的统一资源定位符,抓取指定网页的源代码的步骤,包括:
根据所述统一资源定位符访问缓存设备,判断缓存设备中是否存储了所述统一资源定位符所标识的网页的源代码;
若是,则读取所述缓存设备中存储的所述源代码,作为所抓取的指定网页的源代码;
若否,则根据所述统一资源定位符,通过网络访问所述网页,获取该网页的源代码。
可选地,在执行所述根据所述统一资源定位符,通过网络访问所述网页,获取该网页的源代码的步骤之后,执行下述步骤:
提取所述统一资源定位符中的主机标识、当前网页抓取节点所在的网络地址、以及访问该网页源代码的时间,并将其形成一个抓取特征记录记录在所述缓存设备中;所述缓存设备通过存储所述抓取特征记录实现存储各个抓取节点所在的网络地址访问不同网络主机的最近一次的访问时间。
可选地,在执行所述根据所述统一资源定位符,通过网络访问所述网页,获取该网页的源代码的步骤之前,执行下述步骤:
使用所述缓存设备中的抓取特征记录,查询本抓取网页节点所在的网络地址对所请求的统一资源定位符中主机的最近一次的访问时间;
判断所述最近一次的访问时间距离当前时间的差值是否大于设定的访问间隔阈值;
若是,则执行所述根据所述统一资源定位符,通过网络访问所述网页,获取该网页的源代码的步骤;
若否,则等待设定时间后,返回所述判断所述最近一次的访问时间距离当前时间的差值是否大于设定的访问间隔阈值的步骤。
可选地,所述抓取特征记录包括可查询关键词和被查询值;所述可查询关键词由所述统一资源定位符中的主机标识、当前网页抓取节点所在的网络地址组成;所述被查询值为访问所述主机的时间;所述使用所述缓存设备中的抓取特征记录,查询当前抓取网页节点对所请求的统一资源定位符所在主机的最近一次的访问时间,就是采用当前抓取网页节点所在的网络地址,以及所请求访问的统一资源定位符中的主机标识组成查询关键词,并以该查询关键词为依据,在所述抓取特征记录中查询所述被查询值。
可选地,所述主机标识包括主机的互联网协议地址或域名。
可选地,所述抓取网页的系统还包括主控节点,所述网页抓取节点按照设定的时间间隔将自己的身份识别信息发送给所述主控节点。
可选地,所述抓取网页的系统还包括主控节点,所述网页抓取节点接收主控节点发送的检测信息,并根据检测信息应答。
本申请提供的一种网页抓取节点分配装置,包括:
接收单元,用于接收获取网页抓取节点的请求;
分配单元,用于根据设定的规则,在所管理维护的可用网页抓取节点列表中,为不同的请求选择分配相应的网页抓取节点;
返回单元,用于向提出请求方返回选择分配的网页抓取节点的地址信息。
本申请提供的一种抓取网页的装置,包括:
命令接收单元,用于接收抓取指定网页的命令;
抓取单元,用于根据所述抓取指定网页的命令中包含的统一资源定位符,抓取指定网页的源代码;
网页返回单元,用于将所获得的源代码返回抓取指定网页的命令的请求方。
本申请提供一种抓取网页的方法,使用于包含主控节点、网页抓取节点的抓取网页的系统,其中主控节点用于管理各个网页抓取节点,其特征在于,包括以下步骤:
向所述主控节点发出网页抓取节点的获取请求;
接收所述主控节点返回的网页抓取节点的地址信息;
根据所述网页抓取节点的地址信息,向所述网页抓取节点发送抓取网页的请求;所述抓取网页的请求中,至少包含所指定网页的统一资源定位符;
接收所述网页抓取节点抓取到的指定网页的源代码。
本申请提供一种抓取网页的装置,使用于包含主控节点、网页抓取节点的抓取网页的系统,其中主控节点用于管理各个网页抓取节点,其特征在于,包括:
网页抓取节点获取请求单元,用于向所述主控节点发出网页抓取节点的获取请求;
网页抓取节点地址信息获取单元,用于接收所述主控节点返回的网页抓取节点的地址信息;
抓取网页请求发送单元,用于接收所述网页抓取节点地址信息获取单元发送的网页抓取节点的地址信息,根据所述网页抓取节点的地址信息,向所述网页抓取节点发送抓取网页的请求;所述抓取网页的请求中,至少包含所指定网页的统一资源定位符;
源码接收单元,用于接收所述网页抓取节点以所述权利要求9-14所述的方法抓取到的指定网页的源代码。
本申请提供一种电子设备,其特征在于,所述电子设备包括:输入设备、输出设备、处理器和存储器,所述存储器用于存储软件程序,启动该软件程序,能够按照以下方法分配网页抓取节点:
接收获取网页抓取节点的请求;
根据设定的规则,在所管理维护的可用网页抓取节点列表中,为不同的请求选择分配相应的网页抓取节点;
向提出请求方返回选择分配的网页抓取节点的地址信息。
本申请提供一种电子设备,其特征在于,所述电子设备包括:输入设备、输出设备、处理器和存储器,所述存储器用于存储软件程序,启动该软件程序,能够按照以下方法抓取网页:
接收抓取指定网页的命令;
根据所述抓取指定网页的命令中包含的统一资源定位符,抓取指定网页的源代码;
将所获得的源代码返回抓取指定网页的命令的请求方。
与现有技术相比,本申请具有以下优点:
本申请提供技术方案能够实时地执行抓取网页的操作并不经过处理直接返回抓取的网页,缩短了对抓取网页请求的响应时间,能够保证成功,并且实时、快速地返回所要抓取的网页。
同时由于采用主控节点选择分配网页抓取节点的方式,相比单独计算机实时抓取网页,本申请的技术方案能够将短时间内大量的网页抓取操作分散到不同网页抓取节点上执行。克服了单独的计算机由于性能的限制无法承受大规模并发网页抓取操作的问题。网页抓取节点能够在不影响抓取操作的情况下,灵活地增加或减少,便于扩展或改变网页抓取节点的数量,起到便于提高网页抓取操作的成功率和保证网页抓取操作实时性的效果。
本申请的优选方式中,采用缓存设备存储抓取到的网页,可以节省进行网络访问的时间和资源;在进一步优选的实施方式中,所述缓存设备中存储的网页源代码在超过设定的时长阈值之后被删除,这一优选方案能够确保从缓存获得的信息是及时更新的。
在另一优选方式中,利用缓存设备存储的各个抓取节点所在的网络地址访问不同网络主机的最近一次的时间信息,实现对互联网上主机防止频繁访问机制的规避。
附图说明
图1是本申请现有技术的网络爬虫系统的基本结构示意图;
图2是本申请第一实施例提供的抓取网页的系统的结构框图;
图3是本申请第二实施例提供的网页抓取节点分配方法的流程图;
图4是本申请第三实施例提供的网页抓取节点分配装置的结构框图;
图5是本申请第四实施例提供的抓取网页的方法的流程图;
图6是本申请第五实施例提供的抓取网页的装置的结构框图;
图7是本申请第六实施例提供的抓取网页的方法流程图;
图8是本申请第七实施例提供的使用抓取网页的装置的结构框图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。
本申请所述的主控节点和网页抓取节点可以分别是独立的设备如计算机,也可以是同一台设备如计算机上不同的软件程序或软件进程。
本申请第一实施例提供一种抓取网页的系统,该实施例的结构框图如图2所示。
请参考图2,本实施例的抓取网页的系统包括一个主控节点N101,第一网页抓取节点N102,第二网页抓取节点N103和通讯网络N104。
所述主控节点N101、第一网页抓取节点N102、第二网页抓取节点N103之间通过通讯网络N104连接。
所述主控节点N101管理维护一个可用网页抓取节点的列表,当接收到获取网页抓取节点的请求后,主控节点N101从自己所管理维护的可用网页抓取节点列表内,按照设定的规则选择分配网页抓取节点。
例如,当前可用网页抓取节点列表内有第一网页抓取节点N102和第二网页抓取节点N103两个节点的信息,且第一网页抓取节点N102位于列表中第一个位置,第二网页抓取节点N103位于列表中第二个位置,可以根据设定的规则如每次按照所管理维护的可用网页抓取列表中网页抓取节点的位置顺序选择位于第一个位置的网页抓取节点,如第一网页抓取节点N102位于可用网页抓取节点列表的第一个位置,则选择第一网页抓取节点N102后,向获取网页抓取节点的请求方输出所选择分配的第一网页抓取节点N102的地址信息。
第一网页抓取节点N102接收抓取网页的请求后,执行网页抓取操作,输出抓取到的网页。
为了保证主控节点N101所管理维护的可用网页抓取节点列表及时更新,所述主控节点N101和第一网页抓取节点N102,第二网页抓取节点N103之间优选通过通讯网络采用周期性的双向心跳机制进行周期性的相互验证。
所述周期性的双向心跳机制包括:网页抓取节点周期性地向所述主控节点提供自己正常工作的信息;以及,所述主控节点周期性地主动向其记录的网页抓取节点发送验证信息。
以本实施例为例,所述网页抓取节点周期性的向所述主控节点提供自己工作正常的信息采用如下方式实现:所述第一网页抓取节点N102和第二网页抓取节点N103在启动后,按照设定的时间间隔周期性地将自己的身份识别信息,如包括该网页抓取节点所在的互联网地址和进程端口号的信息,发送给所述主控节点N101;所述主控节点N101收到所述第一网页抓取节点N102,第二网页抓取节点N103所发送的身份识别信息后,根据其中包含的网页抓取节点的身份识别信息,判断所述第一网页抓取节点N102,第二网页抓取节点N103是否已经存在于可用网页抓取节点列表内。如果第一网页抓取节点N102已经保存在可用网页抓取节点列表内而第二网页抓取节点N103没有,则将该第二网页抓取节点N103记录到可用网页抓取节点列表内。该机制可以使主控节点获取各个可以使用的网页抓取节点,避免遗漏。
以本实施例为例,所述主控节点周期性的主动向其记录的网页抓取节点发送验证信息的机制实现方式如下。所述主控节点N101按照设定的时间间隔周期性地向自己所管理维护的可用网页抓取节点列表内的所有网页抓取节点发送检测信息,如主控节点N101所管理维护的可用网页抓取节点列表内保存有第一网页抓取节点N102和第二网页抓取节点N103,则主控节点N101按照设定的时间间隔周期性地向这两个节点分别发送检测信息,如果第一网页抓取节点N102响应了检测信息而第二网页抓取节点N103没有响应所述的检测信息,则对于没有应答的第二网页抓取节点N103,从主控节点管理维护的可用网页抓取节点的列表内删除该第二网页抓取节点N103的记录。该机制可以防止主控节点提供的网页抓取节点不可用。
另一优选的方式下,该抓取网页的系统还可以包括图中虚线所示的缓存设备N105,所述缓存设备通过所述的通讯网络N104与主控节点N101,第一网页抓取节点N102,第二网页抓取节点N103相连接。所述缓存设备N105用于接收并存储所述网页抓取节点抓取的网页源代码,供各个网页抓取节点访问。所述存储的网页源代码以统一资源定位符所标识。且当所述网页源代码存储到缓存设备N105以后,在超过设定的时长阈值后被删除。所述缓存设备还存储各个抓取节点所在的网络地址访问不同网络主机的最近一次的时间信息。
本实施例中的抓取网页的系统仅包含了一个主控节点和两个网页抓取节点,第一网页抓取节点N102及第二网页抓取节点N103,实际应用当中可以根据抓取网页的数量灵活配置主控节点和网页抓取节点的数量,并且不同的主控节点,不同的网页抓取节点甚至主控节点和网页抓取节点可以设置在同一设备如计算机中。由于采用了周期性双向心跳机制在主控节点和网页抓取节点之间传递信息,该抓取网页的系统能够在不影响正常工作的情况下灵活地增加或减少主控节点及网页抓取节点的数量以适应实际应用的需要。在优选的方式下,由于采用了缓存设备暂时存储抓取到的网页源代码并存储各个抓取节点所在的网络地址访问不同网络主机的最近一次的时间信息,能够在避免对网页所在主机的过于频繁的访问的同时保证抓取到的网页的实时性。
本申请第二实施例提供一种网页抓取节点分配方法,其流程图如图3所示,该方法可由包含至少一个主控节点和至少一个网页抓取节点的抓取网页的系统当中的主控节点实施。以下结合图3介绍该网页抓取节点分配方法。
步骤S201,接收获取网页抓取节点的请求。
主控节点接收获取网页抓取节点的请求。
步骤S202,根据设定的规则,在所管理维护的可用网页抓取节点列表中,为不同的请求选择分配相应的网页抓取节点。
主控节点根据设定的规则,例如按照所管理维护的可用网页抓取列表中网页抓取节点的顺序,选择位于可用网页抓取列表第一个位置的网页抓取节点,将其分配为执行抓取网页的节点。
步骤S203,向提出请求方返回选择分配的网页抓取节点的地址信息。
主控节点将所选择分配的网页抓取节点的地址信息返回给提出请求方。
上述实施例说明了本申请的一种网页抓取节点分配方法,相应地,本申请第三实施例提供一种网页抓取节点分配装置,其结构框图如图4所示。本实施例的一种网页抓取节点分配装置包括:接收单元U301、分配单元U302和返回单元U303。
所述接收单元U301,用于接收获取网页抓取节点的请求。
该单元接收到获取网页抓取节点的请求后,向分配单元U302发送启动信号指示分配单元U302执行操作。
所述分配单元U302,用于根据设定的规则,在所管理维护的可用网页抓取节点列表中,为不同的请求选择分配相应的网页抓取节点。
该单元接收到接收单元U301发送的启动信号后,根据设定的规则,在所管理维护的可用网页抓取节点列表中,为不同的请求选择分配相应的网页抓取节点,向返回单元U303发送启动信号指示返回单元U303执行操作。
所述返回单元U303,用于向提出请求方返回选择分配的网页抓取节点的地址信息。
该单元接收到分配单元U302发送的启动信号后,向提出请求方返回选择分配的网页抓取节点的地址信息。
本申请第四实施例提供一种抓取网页的方法,其流程图如图5所示,可由本包括至少一个网页抓取节点和缓存设备的抓取网页的系统当中的网页抓取节点实施。
步骤S401,接收抓取指定网页的命令。
网页抓取节点获取抓取指定网页的命令。
步骤S402,根据所述抓取指定网页的命令中包含的统一资源定位符,抓取指定网页的源代码。
网页抓取节点获取到抓取指定网页的命令后,可以采用多种方式执行抓取指定网页的源代码的操作,优选地,可以采用如下的方法:
网页抓取节点根据抓取指定网页的命令中的统一资源定位符,查询缓存设备中是否已经保存有有效的以此统一资源定位符标识的网页,若有,则直接从缓存设备中抓取该网页的源代码。
若缓存设备中不存在所述统一资源定位符标识的网页,则将所述统一资源定位符中的主机标识,如主机互联网协议地址或域名,与当前网页抓取节点所在的网络地址合并组成查询关键字,以此关键字查询缓存设备中的抓取特征记录中所记录的当前网页抓取节点访问所述统一资源定位符中主机的最近一次的时间。
如果查询到的最近一次的访问时间距离当前时间的差值大于预先设定的访问间隔阈值或没有在缓存设备的抓取特征记录中查到相应的时间记录,则当前网页抓取节点通过网络以所述统一资源定位符中所指定的协议,访问所述统一资源定位符中所指定的网络主机及路径抓取所述指定的网页。
如果查询到的最近一次的访问时间距离当前时间的差值小于或等于预先设定的阈值,则当前网页抓取节点推迟一个设定的时间间隔再次判断所述查询到的最近访问时间距离当前时间的差值是否大于预先设定的访问间隔阈值,直至所述查询到的最近访问时间距离当前时间的差值大于预先设定的访问间隔阈值后,当前网页抓取节点再通过网络以所述统一资源定位符中所指定的协议,访问所述统一资源定位符中所指定的网络主机及路径抓取所述指定的网页。
当前网页抓取节点通过网络以所述统一资源定位符中所指定的协议,访问所述统一资源定位符中所指定的网络主机及路径抓取所述指定的网页后,将指定网页的统一资源定位符中的主机标识,如主机互联网协议地址或域名,与当前网页抓取节点所在的网络地址一起,与访问所述统一资源定位符中主机的时间一并形成一条抓取特征记录保存到缓存设备中。这样能够将各个抓取节点所在的网络地址访问不同网络主机的最近一次的时间信息保存到缓存到设备中的抓取特征记录。
步骤S403,将所获得的源代码返回抓取指定网页的命令的请求方。
网页抓取节点将抓取到的指定的网页的源代码返回抓取指定网页的命令请求方。
上述实施例说明了本申请的一种抓取网页的方法,除了采用先查询缓存设备中是否已经保存有所需抓取的网页以外,还对网页所在主机访问的时间频率进行检验,不仅有效避免了对网页所在主机的太过频繁的访问,还能起到提高网页抓取的成功率和效率的效果。与之相应地,本申请第五实施例提供一种抓取网页的装置,其结构框图如图6所示。
本实施例的装置包括:命令接收单元U501,抓取单元U502和网页返回单元U503。
所述命令接收单元U501,用于接收抓取指定网页的命令。
该单元接收抓取指定网页的命令,向抓取单元U502发送启动信号,指示抓取单元U502执行操作。
所述抓取单元U502,用于根据所述抓取指定网页的命令中包含的统一资源定位符,抓取指定网页的源代码。
该单元接收命令接收单元U501发送的启动信号,根据所述抓取指定网页的命令中包含的统一资源定位符,抓取指定网页的源代码,向网页返回单元U503发送启动信号指示网页返回单元U503执行操作。
所述网页返回单元U503,用于将所获得的源代码返回抓取指定网页的命令的请求方。
该单元接收抓取单元U502发送的启动信号,将所获得的源代码返回抓取指定网页的命令的请求方。
本申请第六实施例提供一种抓取网页的方法,该方法用于包含主控节点、网页抓取节点的抓取网页的系统,其中主控节点用于管理各个网页抓取节点。其流程图如图7所示。
步骤S601,向所述主控节点发出网页抓取节点的获取请求。
向抓取网页的系统中的主控节点发出网页抓取节点的获取请求。
步骤S602,接收所述主控节点返回的网页抓取节点的地址信息。
接收所述主控节点返回的网页抓取节点的地址信息。
步骤S603,根据所述网页抓取节点的地址信息,向所述网页抓取节点发送抓取网页的请求;所述抓取网页的请求中,至少包含所指定网页的统一资源定位符。
根据主控节点返回的网页抓取节点的地址信息,向相应的网页抓取节点发送抓取网页的请求。抓取网页的请求中包含有所指定网页的统一资源定位符。
步骤S604,接收所述网页抓取节点抓取到指定网页的源代码。
接收网页抓取节点抓取到的指定的网页的源代码。
上述实施例说明了本申请的一种抓取网页的系统的抓取网页的方法,相应地,本申请第七实施例提供一种抓取网页的装置,该装置使用于包含主控节点、网页抓取节点的抓取网页的系统,其中主控节点用于管理各个网页抓取节点。其结构框图如图8所示。
本实施例的装置包括:网页抓取节点获取请求单元U701,网页抓取节点地址信息获取单元U702,抓取网页请求发送单元U703和源码接收单元U704
所述网页抓取节点获取请求单元U701,用于向所述主控节点发出网页抓取节点的获取请求。
该单元向所述主控节点发出网页抓取节点的获取请求后,向网页抓取节点地址信息获取单元U702发送启动信号,指示网页抓取节点地址信息获取单元U702执行操作。
所述网页抓取节点地址信息获取单元U702,用于接收所述主控节点返回的网页抓取节点的地址信息。
该单元接收到网页抓取节点获取请求单元U701发送的启动信号后,接收所述主控节点返回的网页抓取节点的地址信息。向抓取网页请求发送单元U703发送启动信号,指示抓取网页请求发送单元U703执行操作。
所述抓取网页请求发送单元U703,用于接收所述网页抓取节点地址信息获取单元发送的网页抓取节点的地址信息,根据所述网页抓取节点的地址信息,向所述网页抓取节点发送抓取网页的请求;所述抓取网页的请求中,至少包含所指定网页的统一资源定位符。
该单元接收网页抓取节点地址信息获取单元U702发送的启动信号,接收所述网页抓取节点地址信息获取单元U702发送的网页抓取节点的地址信息,根据所述网页抓取节点的地址信息,向所述网页抓取节点发送抓取网页的请求;所述抓取网页的请求中,至少包含所指定网页的统一资源定位符。而后向源码接收单元U704发送启动信号,指示源码接收单元U704执行操作。
所述源码接收单元U704,用于接收所述网页抓取节点抓取到的指定网页的源代码。
该单元接收抓取网页请求发送单元U703发送的启动信号后,接收所述网页抓取节点抓取到的指定网页的源代码。
本申请第八实施例提供一种电子设备,该电子设备包括:输入设备、输出设备、处理器和存储器,所述存储器用于存储软件程序,启动该软件程序,能够按照以下方法分配网页抓取节点:
接收获取网页抓取节点的请求;
根据设定的规则,在所管理维护的可用网页抓取节点列表中,为不同的请求选择分配相应的网页抓取节点;
向提出请求方返回选择分配的网页抓取节点的地址信息。
本申请第九实施例提供一种电子设备,该电子设备包括:输入设备、输出设备、处理器和存储器,所述存储器用于存储软件程序,启动该软件程序,能够按照以下方法抓取网页:
接收抓取指定网页的命令;
根据所述抓取指定网页的命令中包含的统一资源定位符,抓取指定网页的源代码;
将所获得的源代码返回抓取指定网页的命令的请求方。
本申请虽然以较佳实施例公开如上,但其并不是用来限定本申请,任何本领域技术人员在不脱离本申请的精神和范围内,都可以做出可能的变动和修改,因此本申请的保护范围应当以本申请权利要求所界定的范围为准。
在一个典型的配置中,计算机包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
1、计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
2、本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

Claims (23)

1.一种抓取网页的系统,包括至少一个主控节点,至少一个网页抓取节点和通讯网络,所述主控节点、网页抓取节点之间通过通讯网络连接,其特征在于,
主控节点接收对网页抓取节点的获取请求,从所管理维护的可用网页抓取节点列表内,以设定的规则为不同的获取网页抓取节点的请求选择分配网页抓取节点,向获取网页抓取节点的请求方输出所选择分配的网页抓取节点的信息;
网页抓取节点接收抓取网页的请求,执行网页抓取操作,输出抓取到的网页;
所述抓取网页的系统还包括:缓存设备,用于接收并存储所述网页抓取节点抓取的网页源代码,供各个网页抓取节点访问;所述缓存设备还存储各个抓取节点所在的网络地址访问不同网络主机的最近一次的时间信息。
2.根据权利要求1中所述的抓取网页的系统,其特征在于,所述缓存设备中存储的网页源代码对应其统一资源定位符存储。
3.根据权利要求2所述的抓取网页的系统,其特征在于,所述缓存设备中存储的网页源代码在超过设定的时长阈值之后被删除。
4.根据权利要求1所述的抓取网页的系统,其特征在于,所述网页抓取节点按照设定的时间间隔将自己的身份识别信息发送给所述主控节点,所述主控节点收到该网页抓取节点所发送的身份识别信息后,根据其中包含的网页抓取节点的身份识别信息,判断该网页抓取节点是否已经存在于可用网页抓取节点列表内,若否,则将该网页抓取节点记录到可用网页抓取节点列表内。
5.根据权利要求4所述的抓取网页的系统,其特征在于,所述主控节点按照设定的时间间隔向可用网页抓取节点列表内的所有网页抓取节点发送检测信息,并接收来自这些网页抓取节点的应答,对于没有应答的网页抓取节点,则从其所管理维护的所述可用网页抓取节点列表内删除该网页抓取节点的记录。
6.根据权利要求4所述的抓取网页的系统,其特征在于,所述身份识别信息包括网页抓取节点所在的网络地址和进程端口号。
7.一种网页抓取节点分配方法,其特征在于,由包括至少一个主控节点和至少一个网页抓取节点的抓取网页的系统中的主控节点执行下述步骤;
接收获取网页抓取节点的请求;
根据设定的规则,在所管理维护的可用网页抓取节点列表中,为不同的请求选择分配相应的网页抓取节点;
向提出请求方返回选择分配的网页抓取节点的地址信息;
所述抓取网页的系统中包括:缓存设备,用于接收并存储所述网页抓取节点抓取的网页源代码,供各个网页抓取节点访问;所述缓存设备还存储各个抓取节点所在的网络地址访问不同网络主机的最近一次的时间信息。
8.根据权利要求7所述的网页抓取节点分配方法,其特征在于,所述主控节点接收网页抓取节点按照设定的时间间隔发送的所述网页抓取节点自身的身份识别信息,该主控节点根据所述身份识别信息,判断该网页抓取节点是否已经存在于所述主控节点所管理维护的可用网页抓取节点列表中,若否,则将该网页抓取节点记录到可用网页抓取节点列表中。
9.根据权利要求7所述的网页抓取节点分配方法,其特征在于,所述主控节点按照设定的时间间隔向可用网页抓取节点列表内的所有网页抓取节点发送检测信息,并接收来自这些网页抓取节点的应答,对于没有应答的网页抓取节点,则从其所管理维护的所述可用网页抓取节点列表内删除该网页抓取节点的记录。
10.一种抓取网页的方法,其特征在于,应用于抓取网页的系统中,所述抓取网页的系统包括至少一个网页抓取节点,所述方法包括:
所述网页抓取节点接收抓取指定网页的命令;
根据所述抓取指定网页的命令中包含的统一资源定位符,抓取指定网页的源代码;
将所获得的源代码返回抓取指定网页的命令的请求方;
所述网页抓取的系统中还包括:缓存设备,用于接收并存储所述网页抓取节点抓取的网页源代码,供各个网页抓取节点访问;所述缓存设备还存储各个抓取节点所在的网络地址访问不同网络主机的最近一次的时间信息。
11.根据权利要求10所述的抓取网页的方法,其特征在于,所述根据所述抓取指定网页的命令中包含的统一资源定位符,抓取指定网页的源代码的步骤,包括:
根据所述统一资源定位符访问缓存设备,判断缓存设备中是否存储了所述统一资源定位符所标识的网页的源代码;
若是,则读取所述缓存设备中存储的所述源代码,作为所抓取的指定网页的源代码;
若否,则根据所述统一资源定位符,通过网络访问所述网页,获取该网页的源代码。
12.根据权利要求11所述的抓取网页的方法,其特征在于,在执行所述根据所述统一资源定位符,通过网络访问所述网页,获取该网页的源代码的步骤之后,执行下述步骤:
提取所述统一资源定位符中的主机标识、当前网页抓取节点所在的网络地址、以及访问该网页源代码的时间,并将其形成一个抓取特征记录记录在所述缓存设备中;所述缓存设备通过存储所述抓取特征记录实现存储各个抓取节点所在的网络地址访问不同网络主机的最近一次的访问时间。
13.根据权利要求12所述的抓取网页的方法,其特征在于,在执行所述根据所述统一资源定位符,通过网络访问所述网页,获取该网页的源代码的步骤之前,执行下述步骤:
使用所述缓存设备中的抓取特征记录,查询本抓取网页节点所在的网络地址对所请求的统一资源定位符中主机的最近一次的访问时间;
判断所述最近一次的访问时间距离当前时间的差值是否大于设定的访问间隔阈值;
若是,则执行所述根据所述统一资源定位符,通过网络访问所述网页,获取该网页的源代码的步骤;
若否,则等待设定时间后,返回所述判断所述最近一次的访问时间距离当前时间的差值是否大于设定的访问间隔阈值的步骤。
14.根据权利要求13所述的抓取网页的方法,其特征在于,所述抓取特征记录包括可查询关键词和被查询值;所述可查询关键词由所述统一资源定位符中的主机标识、当前网页抓取节点所在的网络地址组成;所述被查询值为访问所述主机的时间;所述使用所述缓存设备中的抓取特征记录,查询当前抓取网页节点对所请求的统一资源定位符所在主机的最近一次的访问时间,就是采用当前抓取网页节点所在的网络地址,以及所请求访问的统一资源定位符中的主机标识组成查询关键词,并以该查询关键词为依据,在所述抓取特征记录中查询所述被查询值。
15.根据权利要求12所述的抓取网页的方法,其特征在于,所述主机标识包括主机的互联网协议地址或域名。
16.根据权利要求10所述的抓取网页的方法,其特征在于,所述抓取网页的系统还包括主控节点,所述网页抓取节点按照设定的时间间隔将自己的身份识别信息发送给所述主控节点。
17.根据权利要求10所述的抓取网页的方法,其特征在于,所述抓取网页的系统还包括主控节点,所述网页抓取节点接收主控节点发送的检测信息,并根据检测信息应答。
18.一种网页抓取节点分配装置,所述网页抓取节点分配装置至少由一个网页抓取节点的抓取网页系统中的主控节点组成,包括:
接收单元,用于接收获取网页抓取节点的请求;
分配单元,用于根据设定的规则,在所管理维护的可用网页抓取节点列表中,为不同的请求选择分配相应的网页抓取节点;
返回单元,用于向提出请求方返回选择分配的网页抓取节点的地址信息;
所述抓取网页的系统中包括:缓存设备,用于接收并存储所述网页抓取节点抓取的网页源代码,供各个网页抓取节点访问;所述缓存设备还存储各个抓取节点所在的网络地址访问不同网络主机的最近一次的时间信息。
19.一种抓取网页的装置,所述抓取网页的装置应用于抓取网页的系统中,包括:
命令接收单元,用于接收抓取指定网页的命令;
抓取单元,用于根据所述抓取指定网页的命令中包含的统一资源定位符,抓取指定网页的源代码;
网页返回单元,用于将所获得的源代码返回抓取指定网页的命令的请求方;
所述抓取网页的系统中包括:缓存设备,用于接收并存储所述网页抓取节点抓取的网页源代码,供各个网页抓取节点访问;所述缓存设备还存储各个抓取节点所在的网络地址访问不同网络主机的最近一次的时间信息。
20.一种抓取网页的方法,使用于包含主控节点、网页抓取节点的抓取网页的系统,其中主控节点用于管理各个网页抓取节点,其特征在于,包括以下步骤:
向所述主控节点发出网页抓取节点的获取请求;
接收所述主控节点返回的网页抓取节点的地址信息;
根据所述网页抓取节点的地址信息,向所述网页抓取节点发送抓取网页的请求;所述抓取网页的请求中,至少包含所指定网页的统一资源定位符;
接收所述网页抓取节点抓取到的指定网页的源代码;
所述抓取网页的系统中还包括:缓存设备,用于接收并存储所述网页抓取节点抓取的网页源代码,供各个网页抓取节点访问;所述缓存设备还存储各个抓取节点所在的网络地址访问不同网络主机的最近一次的时间信息。
21.一种抓取网页的装置,使用于包含主控节点、网页抓取节点的抓取网页的系统,其中主控节点用于管理各个网页抓取节点,其特征在于,包括:
网页抓取节点获取请求单元,用于向所述主控节点发出网页抓取节点的获取请求;
网页抓取节点地址信息获取单元,用于接收所述主控节点返回的网页抓取节点的地址信息;
抓取网页请求发送单元,用于接收所述网页抓取节点地址信息获取单元发送的网页抓取节点的地址信息,根据所述网页抓取节点的地址信息,向所述网页抓取节点发送抓取网页的请求;所述抓取网页的请求中,至少包含所指定网页的统一资源定位符;
源码接收单元,用于接收所述网页抓取节点以所述权利要求9-14所述的方法抓取到的指定网页的源代码。
22.一种电子设备,其特征在于,所述电子设备包括:输入设备、输出设备、处理器和存储器,所述存储器用于存储软件程序,启动该软件程序,能够按照以下方法分配网页抓取节点:
接收获取网页抓取节点的请求;
根据设定的规则,在所管理维护的可用网页抓取节点列表中,为不同的请求选择分配相应的网页抓取节点;
向提出请求方返回选择分配的网页抓取节点的地址信息;
其中,所述存储器至少由一个网页抓取节点的抓取网页系统中的主控节点组成;所述抓取网页的系统中包括:缓存设备,用于接收并存储所述网页抓取节点抓取的网页源代码,供各个网页抓取节点访问;所述缓存设备还存储各个抓取节点所在的网络地址访问不同网络主机的最近一次的时间信息。
23.一种电子设备,其特征在于,所述电子设备应用于抓取网页的系统中,包括:输入设备、输出设备、处理器和存储器,所述存储器用于存储软件程序,启动该软件程序,能够按照以下方法抓取网页:
接收抓取指定网页的命令;
根据所述抓取指定网页的命令中包含的统一资源定位符,抓取指定网页的源代码;
将所获得的源代码返回抓取指定网页的命令的请求方;
所述抓取网页的系统中包括:缓存设备,用于接收并存储所述网页抓取节点抓取的网页源代码,供各个网页抓取节点访问;所述缓存设备还存储各个抓取节点所在的网络地址访问不同网络主机的最近一次的时间信息。
CN201510397674.4A 2015-07-08 2015-07-08 抓取网页的系统、网页抓取节点分配方法、抓取网页的方法 Active CN106339385B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510397674.4A CN106339385B (zh) 2015-07-08 2015-07-08 抓取网页的系统、网页抓取节点分配方法、抓取网页的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510397674.4A CN106339385B (zh) 2015-07-08 2015-07-08 抓取网页的系统、网页抓取节点分配方法、抓取网页的方法

Publications (2)

Publication Number Publication Date
CN106339385A CN106339385A (zh) 2017-01-18
CN106339385B true CN106339385B (zh) 2020-06-16

Family

ID=57827049

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510397674.4A Active CN106339385B (zh) 2015-07-08 2015-07-08 抓取网页的系统、网页抓取节点分配方法、抓取网页的方法

Country Status (1)

Country Link
CN (1) CN106339385B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107423382A (zh) * 2017-07-13 2017-12-01 中国物品编码中心 网络爬取方法和装置
CN110442770B (zh) * 2019-08-08 2023-06-20 深圳市今天国际物流技术股份有限公司 一种数据抓取及保存方法、装置、计算机设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102902669A (zh) * 2011-07-22 2013-01-30 同程网络科技股份有限公司 基于互联网系统的分布式信息抓取方法
CN103559219A (zh) * 2013-10-18 2014-02-05 北京京东尚科信息技术有限公司 分布式网络爬虫抓取任务调度方法、调度端设备及抓取节点
CN103970788A (zh) * 2013-02-01 2014-08-06 北京英富森信息技术有限公司 一种基于网页爬取的爬虫技术

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102902669A (zh) * 2011-07-22 2013-01-30 同程网络科技股份有限公司 基于互联网系统的分布式信息抓取方法
CN103970788A (zh) * 2013-02-01 2014-08-06 北京英富森信息技术有限公司 一种基于网页爬取的爬虫技术
CN103559219A (zh) * 2013-10-18 2014-02-05 北京京东尚科信息技术有限公司 分布式网络爬虫抓取任务调度方法、调度端设备及抓取节点

Also Published As

Publication number Publication date
CN106339385A (zh) 2017-01-18

Similar Documents

Publication Publication Date Title
US11349940B2 (en) Server side data cache system
KR101994021B1 (ko) 파일 조작 방법 및 장치
CN103324533B (zh) 分布式数据处理方法、装置及系统
CN109983431B (zh) 用于存储设备中的列表检索的系统和方法
TW201220197A (en) for improving the safety and reliability of data storage in a virtual machine based on cloud calculation and distributed storage environment
US20160019119A1 (en) Prioritizing backup of files
CN107959695B (zh) 一种数据传输方法及装置
US20170153909A1 (en) Methods and Devices for Acquiring Data Using Virtual Machine and Host Machine
CN104020961A (zh) 分布式数据存储方法、装置及系统
CN105677904B (zh) 基于分布式文件系统的小文件存储方法及装置
CN110008197B (zh) 一种数据处理方法、系统及电子设备和存储介质
WO2021197392A1 (zh) 任务队列生成
CN107135242B (zh) Mongodb集群访问方法、装置及系统
US20070094395A1 (en) Computer system, storage area allocation method, and management computer
CN106339385B (zh) 抓取网页的系统、网页抓取节点分配方法、抓取网页的方法
CN110943876B (zh) Url状态检测方法、装置、设备和系统
CN103500108A (zh) 系统内存访问方法、节点控制器和多处理器系统
WO2014190700A1 (zh) 一种内存访问的方法、缓冲调度器和内存模块
CN109254958A (zh) 分布式数据读写方法、设备及系统
CN113301173A (zh) 域名更新系统及方法、消息转发方法、服务器
KR101884726B1 (ko) 데이터베이스 시스템에서 블록을 판독하기 위한 방법, 장치 및 컴퓨터 판독가능 매채에 저장된 컴퓨터-프로그램
CN104281486A (zh) 一种虚拟机处理方法和装置
US9323768B2 (en) Anticipatorily retrieving information in response to a query of a directory
CN110019448B (zh) 一种数据交互方法及装置
CN112286876A (zh) 日志文件抓取方法、设备及计算机可读存储介质

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
TR01 Transfer of patent right

Effective date of registration: 20240226

Address after: Room 01, 45th Floor, AXA Building, 8 Shanton 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