CN106874487A - 一种分布式爬虫管理系统及其方法 - Google Patents
一种分布式爬虫管理系统及其方法 Download PDFInfo
- Publication number
- CN106874487A CN106874487A CN201710092369.3A CN201710092369A CN106874487A CN 106874487 A CN106874487 A CN 106874487A CN 201710092369 A CN201710092369 A CN 201710092369A CN 106874487 A CN106874487 A CN 106874487A
- Authority
- CN
- China
- Prior art keywords
- reptile
- node
- management
- task
- project
- 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
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)
- Data Exchanges In Wide-Area Networks (AREA)
- Debugging And Monitoring (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开一种分布式爬虫管理系统,包括:用于系统登录和数据展示的主页展示模块;创建项目和对项目进行管理的项目管理模块;对项目爬虫进行部署和管理的爬虫管理模块;对爬虫数据进行监控管理的数据管理模块;对爬虫节点进行管理的节点管理模块和对用户的爬虫进行代理管理的代理管理模块,其中,所述爬虫节点为从云平台上申请的虚拟机。此外,本发明还提供一种分布式爬虫管理方法。本发明的分布式爬虫管理系统能够提供反爬解决方案以及爬虫和数据的管理与分析,从而为企业或个人提供安全、高效的数据爬取解决方案。
Description
技术领域
本发明涉及一种分布式爬虫管理系统和方法,具体涉及一种能够对爬虫和爬虫爬取的数据进行管理与分析的分布式爬虫管理系统及其方法。
背景技术
传统爬虫管理方式去互联网上爬取数据会被一些网站的反爬机制屏蔽掉,导致爬虫开发人员辛辛苦苦开发出来的爬虫爬取不到有用的数据,即使调整爬虫后过一段时间又不能正常爬取数据,反复的修改,对于企业来说既费时间又费金钱,对于开发人员来说重复单调的工作没有任何意义。
因此,亟待提供一种能够对爬虫及其爬取的数据进行有效管理和分析的方案。
发明内容
为解决上述技术问题,本发明提供一种分布式爬虫管理系统,该系统是一个功能强大的爬虫管理平台,主要提供防反爬解决方案以及爬虫和数据的管理与分析,为企业(或个人)提供安全、高效的数据爬取解决方案。
本发明采用的技术方案为:
本发明的实施例提供一种分布式爬虫管理系统,包括:主页展示模块,包括登录单元和数据展示单元,所述登录单元为用户访问分布式爬虫管理系统提供接口,用户通过在所述登录单元中输入相应的身份验证信息来访问所述分布式爬虫管理系统,所述数据展示单元用于展示与爬虫相关的数据;项目管理模块,基于用户的指令创建项目,为所创建的项目分配相关的项目爬虫,并导入项目爬虫的任务源,以及对项目和项目爬虫进行管理;爬虫管理模块,基于用户的指令,将用户编辑好的爬虫程序通过上传爬虫入口添加到分布式爬虫管理系统中,基于项目信息中的爬虫策略对爬虫进行部署,并对爬虫的运行状况进行管理;
数据管理模块,对项目爬虫爬取到的数据进行监控和统计管理,并将统计后的信息通过数据展示单元进行可视化展示;节点管理模块,基于数据管理模块统计的信息对爬虫所运行的节点进行管理,以确保每个爬虫运行在相对应的爬虫节点上,所述爬虫节点为从云平台上申请的虚拟机;日志管理模块,用于对用户的操作行为进行监控记录;代理管理模块,基于需要代理管理的用户的授权,对授权用户的爬虫任务进行代理管理。
可选地,所述爬虫管理模块通过设置反爬虫机制来对爬虫进行部署和管理,其中,所述反爬虫机制包括:基于用户指令,向云平台申请多个IP地址,在爬虫执行爬虫任务的过程中如果被所访问的网站限制,则从申请的多个IP地址中选择一个IP地址来访问被限制访问的网站。
可选地,当使用更换的IP地址访问被限制访问的网站后,增加当前延迟下载的时间或者减小网页下载并发数。
可选地,所述节点管理模块包括动态调整爬虫节点数的爬虫节点调整单元和监控爬虫节点的爬虫节点监控单元;所述爬虫节点调整单元周期性检测是否需要增加爬虫节点或者减少爬虫节点,如果在预设的多个周期内,每个周期内检测的当前爬虫任务量都超过上限阈值,则增加爬虫节点;如果在预设的多个周期内,每个周期内检测的当前爬虫任务量都小于下限阈值,则减少爬虫节点;当前爬虫任务量基于下述公式来确定:
其中,P为当前爬虫任务量,P=1表示当前爬虫节点数量不能满足爬虫任务需求,需要增加爬虫节点,P=-1表示爬虫系统所拥有的爬虫节点数量远远高于实际爬虫任务需求,需要减少爬虫节点,c表示当前爬虫任务数,ui表示第i个爬虫任务的待抓取URL数,n表示当前处于运行状态的爬虫节点数,Fmax表示上限阈值,Fmin表示下限阈值。
可选地,所述爬虫节点监控单元周期性检测爬虫节点发送的心跳包,如果在连续的多个周期内,在预定的时间内都没有收到某个爬虫节点发送的心跳包,则判定该爬虫节点已宕机。
可选地,所述预设的多个周期为5个周期。
可选地,所述数据展示单元用于展示如下信息:项目总数、节点总数、爬虫程序总数、爬虫实例总数、爬取页面任务总量、完成页面爬虫数量、爬取数据总量、爬取数据节点利用率、爬虫节点主机名、爬虫节点IP、爬虫节点是否处于任务抓取状态和爬虫节点是否正常。
本发明的另一实施例提供一种分布式爬虫管理方法,包括:在主页展示模块的登录单元中输入相应的身份验证信息来访问所述分布式爬虫管理系统,并在主页展示模块的数据展示单元中展示与爬虫相关的数据;在项目管理模块中输入创建项目的指令来创建项目,为所创建的项目分配相关的项目爬虫,并导入项目爬虫的任务源,以及对项目和项目爬虫进行管理;在爬虫管理模块中将编辑好的爬虫程序通过上传爬虫入口添加到分布式爬虫管理系统中,并基于项目信息中的爬虫策略对爬虫进行部署,并对爬虫的运行状况进行管理;在数据管理模块中对项目爬虫爬取到的数据进行监控和统计管理,并将统计后的信息通过数据展示单元进行可视化展示;在节点管理模块中基于数据管理模块统计的信息对爬虫所运行的节点进行管理,以确保每个爬虫运行在相对应的爬虫节点上,所述爬虫节点为从云平台上申请的虚拟机;在日志管理模块中对用户的操作行为进行监控记录;在代理管理模块中对需求代理管理的用户的爬虫任务进行代理管理。
可选地,在所述爬虫管理模块中设置反爬虫机制来对爬虫进行部署和管理,其中,所述反爬虫机制包括:基于用户指令,向云平台申请多个IP地址,在爬虫执行爬虫任务的过程中如果被所访问的网站限制,则从申请的多个IP地址中选择一个IP地址来访问被限制访问的网站。
可选地,当使用更换的IP地址访问被限制访问的网站后,增加当前延迟下载的时间或者减小网页下载并发数。
可选地,在所述节点管理模块的爬虫节点调整单元中周期性检测是否需要增加爬虫节点或者减少爬虫节点,如果在预设的多个周期内,每个周期内检测的当前爬虫任务量都超过上限阈值,则增加爬虫节点;如果在预设的多个周期内,每个周期内检测的当前爬虫任务量都小于下限阈值,则减少爬虫节点;当前爬虫任务量基于下述公式来确定:
其中,P为当前爬虫任务量,P=1表示当前爬虫节点数量不能满足爬虫任务需求,需要增加爬虫节点,P=-1表示爬虫系统所拥有的爬虫节点数量远远高于实际爬虫任务需求,需要减少爬虫节点,c表示当前爬虫任务数,ui表示第i个爬虫任务的待抓取URL数,n表示当前处于运行状态的爬虫节点数,Fmax表示上限阈值,Fmin表示下限阈值。
可选地,在所述节点管理模块的爬虫节点监控单元中周期性检测爬虫节点发送的心跳包,如果在连续的多个周期内,在预定的时间内都没有收到某个爬虫节点发送的心跳包,则判定该爬虫节点已宕机。
可选地,所述预设的多个周期为5个周期。
可选地,在所述数据展示单元中展示如下信息:项目总数、节点总数、爬虫程序总数、爬虫实例总数、爬取页面任务总量、完成页面爬虫数量、爬取数据总量、爬取数据节点利用率、爬虫节点主机名、爬虫节点IP、爬虫节点是否处于任务抓取状态和爬虫节点是否正常。
与现有技术相比,本发明的分布式爬虫管理系统将网络爬虫构建在云平台上,从云平台上申请虚拟机作为爬虫节点,因此能够满足高效率抓取网页的同时提高资源的利用率。此外,能够对爬虫的爬取状况进行实时监控和管理,能够最优化爬虫配置,减少资源的浪费。
附图说明
图1为本发明的分布式爬虫管理系统的框架图。
图2为本发明的分布式爬虫管理方法的流程图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
图1为本发明的分布式爬虫管理系统的框架图。图2为本发明的分布式爬虫管理方法的流程图。
【实施例1】
如图1所示,本实施例提供一种分布式爬虫管理系统,该分布式爬虫管理系统包括主页展示模块1、项目管理模块2、爬虫管理模块3、数据管理模块4、节点管理模块5和代理管理模块7。
其中,主页展示模块1包括登录单元和数据展示单元,所述登录单元为用户访问分布式爬虫管理系统提供接口,用户通过在登录单元中输入相应的身份验证信息来访问所述分布式爬虫管理系统,数据展示单元用于展示与爬虫相关的数据。具体地,当需要进行爬虫任务时,用户可基于在分布式爬虫管理系统注册的账户和密码通过登录单元登录到系统中,以访问系统并进行相关操作,用户可以使用任何一款主流网络浏览器访问分布式爬虫管理系统。登录单元对用户登录的次数和设置密码有限制,以有效地管理用户,合理利用资源。数据展示单元主要展示爬虫任务的运行状态,包括项目总数、节点总数、爬虫程序总数、爬虫实例总数、爬取页面任务总量、完成页面爬虫数量、系统爬取数据总量、爬取数据节点利用率、爬虫节点主机名、爬虫节点IP、爬虫节点是否处于任务抓取状态和爬虫节点是否正常等,数据展示单元可基于Metronic前端框架进行开发,主要使用HTML、jQuery和AngularJS进行表现层的实现。
项目管理模块2用于基于用户的指令创建项目,为所创建的项目分配相关的项目爬虫,并导入项目爬虫的任务源,以及对项目和项目爬虫进行管理。项目爬虫的任务源来自用户编辑的用户程序。可基于用户的指令对项目进行新增、修改、删除、查询,对项目爬虫进行新增、修改、删除、查询以及对项目爬虫的任务源进行导入、导出和启动、暂停、停止、重启项目爬虫等操作。项目管理模块中的所有数据将会保存在基于MySQL的数据库中。
爬虫管理模块3用于基于用户的指令,将用户编辑好的爬虫程序通过上传爬虫入口添加到分布式爬虫管理系统中,基于项目管理模块中的项目信息中的爬虫策略对爬虫进行部署,并对爬虫的运行状况进行管理,主要包括爬虫的新增、修改、删除、查询和测试爬虫启动、暂停、停止等。当用户新创建一个爬虫任务后,此任务只是将抓取任务记录到MySQL数据库中,并没有进行实际的抓取工作,需要进行“开始”这个操作后,才开始此次的抓取工作;“编辑”这个操作是方便用户更改爬虫任务的配置信息,更改爬虫任务的配置信息后,下次就可以按照更改后的配置信息来执行抓取任务;“删除”操作是删除用户不需要的抓取任务,将会删除保存在MySQL数据库及Redis数据库中相关的数据。
在爬虫基于爬虫任务指令爬取任务从网页下载数据的过程中,需要考虑某些网站设置的对网站服务器进行频繁访问的反爬虫软件,因此,需要对爬虫进行部署和爬虫的运行状况进行实时管理。目前当某些网站检测有爬虫软件正在频繁的获取其服务器上的数据时,将会对此爬虫软件做出限制,从而使得爬虫软件不能获取到所需的数据。为了防止网络爬虫被某些网站限制,采用的措施通常有动态设置UserAgent、禁用cookies、延迟下载、减小并发数和使用代理,但是目前很多大型网站都是针对IP地址来设置反爬虫机制的,如果网站检测到同一个IP地址在短时间内过于频繁的访问该网站,将会限制此IP地址在一段时间内不能正常访问该网站。因此,最理想的解决办法就是拥有足够多的IP地址,本发明的爬虫管理模块通过设置反爬虫机制来对爬虫进行部署和管理,所述反爬虫机制包括:基于用户指令,向云平台申请多个IP地址,在爬虫执行爬虫任务的过程中如果被所访问的网站限制,则从申请的多个IP地址中选择一个,使用该选择的IP地址来访问被限制访问的网站。具体地,如果当前使用的IP地址被禁用,就选择备用的IP地址。而在云平台上有大量的IP地址,这些IP地址也是可以被当成一种资源供用户使用,用户可以按需向云平台申请一定量的IP地址,在执行爬虫任务的过程中如果被所访问的网站限制,则从申请的多个IP地址中选择一个,使用此IP地址来访问该网站,以此来应对网站的反爬虫问题。当使用更换的IP地址后,可适当增加当前延迟下载的时间或者减小网页下载并发数,以防此IP地址再次被限制。
数据管理模块4用于将项目爬虫爬取到的数据进行监控和统计管理,并将统计后数据通过数据展示单元进行可视化展示。具体地,数据管理模块以列表形式显示所有爬虫任务信息,其中显示的内容主要包括任务名称、任务开始时间、任务结束时间、总的URL数、已下载页面数、出错页面数和任务运行状态,这些信息主要是从MySQL数据库的crawler_task表中读取的。用户可在数据管理模块中进行数据上传、下载、删除和查询等操作。
节点管理模块5用于基于数据管理模块统计的信息对爬虫所运行的节点进行管理,以确保每个爬虫运行在相对应的爬虫节点上,所述爬虫节点为从云平台上申请的虚拟机。本发明的分布式爬虫管理系统的网络爬虫支持多任务,即在同一时刻可运行多个不同的抓取任务,由于用户需求不同,可能在某一段时间内需要执行大量的抓取任务,而在其他时候只执行较少的抓取任务,因而抓取任务量是动态变化的。传统的分布式网络爬虫为了使得在爬虫任务量较大的情况下也能高效率的抓取网页,通常采用较多的服务器来部署爬虫系统,但是当爬虫任务量较小时,各个服务器的资源利用率很小。本发明的网络爬虫构建在云平台上,从云平台上申请虚拟机作为爬虫节点,云平台提供的虚拟机资源通过简单的操作就能很容易获取到,因此为了在满足高效率抓取网页的同时提高资源的利用率,本发明将根据当前爬虫任务量来动态的调节爬虫节点数量。虚拟机管理结构主要包括预警机制和虚拟机池,预警机制是判断当前爬虫任务量是否达到增加或减少爬虫节点数量的条件,虚拟机池是为了减少申请虚拟机的时间而设置的一个缓冲池。此外,由于分布式网络爬虫需要部署在多台机器上,在爬取的过程中很可能会出现爬虫节点因为一些故障而宕机的情况。另外,对于抓取数据的量较大时,可能会增加新的爬行节点。因此,为了能够处理这样动态增加或移除爬虫节点的问题,需要对所有爬虫节点的运行状态进行监控及其管理。节点管理模块5通过Web页面显示当前所有爬虫节点的运行状态,显示的信息包括爬虫节点主机名、爬虫节点IP、爬虫任务数、爬虫节点是否处于任务抓取状态和爬虫节点是否正常,这些信息主要是从MySQL数据库的worker_node表中读取的。该模块涉及到心跳和发送心跳,控制节点上的接收心跳模块负责接收所有爬虫节点的心跳信息并将其保存到MySQL库中,发送心跳模块是运行在爬虫节点上的,它负责向控制节点发送心跳信息。为此,节点管理模块5可包括动态调整爬虫节点数的爬虫节点调整单元和监控爬虫节点的爬虫节点监控单元。
其中,所述爬虫节点调整单元周期性检测是否需要增加爬虫节点或者减少爬虫节点,如果在预设的多个周期内,每个周期内检测的当前爬虫任务量都超过上限阈值,则增加爬虫节点;如果在预设的多个周期内,每个周期内检测的当前爬虫任务量都小于下限阈值,则减少爬虫节点;当前爬虫任务量基于下述公式来确定:
其中,P为当前爬虫任务量,P=1表示当前爬虫节点数量不能满足爬虫任务需求,需要增加爬虫节点,P=-1表示爬虫系统所拥有的爬虫节点数量远远高于实际爬虫任务需求,需要减少爬虫节点,c表示当前爬虫任务数,ui表示第i个爬虫任务的待抓取URL数,n表示当前处于运行状态的爬虫节点数,Fmax表示上限阈值,Fmin表示下限阈值。即在本发明中,网络爬虫会周期性的检测是否需要进行增加或减少爬虫节点,而且确定需要增加或减少爬虫节点不仅仅是根据一个周期内的爬虫任务执行情况来作判断,而是根据多个周期内的执行情况来进行判断。本文考虑5个周期,如果连续5个周期内都需要增加或减少爬虫节点数量就真正向云平台申请虚拟机。
所述爬虫节点监控单元周期性检测爬虫节点发送的心跳包,如果在连续的多个周期内,在预定的时间内都没有收到某个爬虫节点发送的心跳包,则判定该爬虫节点已宕机。具体地,爬虫节点监控单元如果在T时间内没有收到爬虫节点发送过来的心跳包就认为该爬虫节点已宕机。T的选择依赖于当前网络状况、爬行虫点处理能力等多种不定因素,若T设置过大,会导致不能及时反映当前爬虫节点状态;T设置过小,会提高判断的效率,同时也会增加误判的可能性。对于在实际的应用中,可能会出现网络丢包、闪断和网络拥塞等情况,因此通常认为连续多次丢失心跳包才确定该节点发生了故障。
日志管理模块6用于对用户的操作行为进行监控记录。以便系统管理员可以清楚的知道哪个用户进行了什么操作,包括查询、删除与批量删除等操作,日志管理只有系统管理员能够对其进行操作。当日志管理模块中记录的信息显示系统错误导致平台无法正常运行时,由系统管理人员通过系统重启及人工修复的方式,从系统备份进行恢复。
代理管理模块7用于基于用户的授权,对该用户的爬虫任务进行代理管理。例如,某用户委托系统管理员代为管理其爬虫任务,则系统管理员可基于该授权来对其爬虫任务进行管理,包括新增、修改、删除和查询代理等操作。
需要注意的是,本发明的分布式爬虫管理系统中的各模块之间是松散耦合的,通过接口来实现个模块之间的互联。此外,本发明的分布式爬虫管理系统采用数据缓存中间件Redis来保存爬虫任务和进行任务去重。为保证数据的安全性,本发明主要通过下述方式来保证MySQL数据库的安全性:1.平台架构安全策略;2.用户身份验证管理;3.数据库访问对象的控制策略。
1.平台架构安全策略
平台架构规定只有通过持久层来访问数据库,通过持久层的框架将数据库存储从服务层中分离出来,很好的限制了数据库的访问入口,为整个平台提供一个高层、统一、安全和并发的数据持久机制。完成对各种数据进行持久化的编程工作,并为系统业务逻辑层提供服务。简化数据增、删、改、查等功能的开发过程,继承延续J2EE特有的可伸缩性和可扩展性。
2.用户身份验证管理
MySQL数据库主要是用自身的User Table来作身份认证,数据库把用户访问权限表的信息都放在一个叫做mysql自带的数据库里,并且每个用户的密码还通过加密方式加密后才存入数据表的。每当用户企图访问数据库时,服务器会通过输入的用户名和密码与自带mysql库中的USER表中的数据作对比,如果能够匹配成功,方能通过身份验证,允许用户成功登录数据库。
3.数据库访问对象的控制策略
对于公司内部,数据库的安全可以通过用户管理来实现,把能够直接对数据库进行管理和访问操作的用户分为4个级别:
(1)超级管理员
具有root权限,一个数据库实例有且只有一个超级管理员,它能够全面掌管所有库所有表的所有权限。
(2)一级管理员
权限低于超级管理员,针对需求可以对数据库实例中若干个数据库拥有所有权限。
(3)二级管理员
权限低于一级管理员,针对需求可以对数据库实例中某一个数据库拥有所有权限。
(4)普通用户
权限低于二级管理员,针对需求可以对数据库实例中某一个或者多个数据库拥有查看数据的权限。
因此,通过为直接访问数据库的内部人员制定用户等级,控制权限大小,可以很好的控制用户在数据库中的各种行为,达到安全便捷访问数据库的目的。
【实施例2】
如图2所示,本实施例提供一种分布式爬虫管理方法,所述方法包括:系统登录和数据展示;项目创建和管理;爬虫部署和管理;爬虫数据监控和管理;爬虫节点管理;用户操作行为监控记录;爬虫任务代理管理。以下对这些内容进行详细介绍。
系统登录和数据展示
系统登录和数据展示包括在主页展示模块的登录单元中输入相应的身份验证信息来访问所述分布式爬虫管理系统,并在主页展示模块的数据展示单元中展示与爬虫相关的数据。具体地,当需要进行爬虫任务时,用户可基于在分布式爬虫管理系统注册的账户和密码通过登录单元登录到系统中,以访问系统并进行相关操作,用户可以使用任何一款主流网络浏览器访问分布式爬虫管理系统。登录单元对用户登录的次数和设置密码有限制,以有效地管理用户,合理利用资源。数据展示单元主要展示爬虫任务的运行状态,包括项目总数、节点总数、爬虫程序总数、爬虫实例总数、爬取页面任务总量、完成页面爬虫数量、系统爬取数据总量、爬取数据节点利用率、爬虫节点主机名、爬虫节点IP、爬虫节点是否处于任务抓取状态和爬虫节点是否正常等,数据展示单元可基于Metronic前端框架进行开发,主要使用HTML、jQuery和AngularJS进行表现层的实现。
项目创建和管理
项目创建和管理包括在项目管理模块中输入创建项目的指令来创建项目,为所创建的项目分配相关的项目爬虫,并导入项目爬虫的任务源,以及对项目和项目爬虫进行管理。项目爬虫的任务源来自用户编辑的用户程序。可基于用户的指令对项目进行新增、修改、删除、查询,对项目爬虫进行新增、修改、删除、查询以及对项目爬虫的任务源进行导入、导出和启动、暂停、停止、重启项目爬虫等操作。项目管理模块中的所有数据将会保存在基于MySQL的数据库中。
爬虫部署和管理
爬虫部署和管理包括在爬虫管理模块中将编辑好的爬虫程序通过上传爬虫入口添加到分布式爬虫管理系统中,并基于项目信息中的爬虫策略对爬虫进行部署,并对爬虫的运行状况进行管理。主要包括爬虫的新增、修改、删除、查询和测试爬虫启动、暂停、停止等。当用户新创建一个爬虫任务后,此任务只是将抓取任务记录到MySQL数据库中,并没有进行实际的抓取工作,需要进行“开始”这个操作后,才开始此次的抓取工作;“编辑”这个操作是方便用户更改爬虫任务的配置信息,更改爬虫任务的配置信息后,下次就可以按照更改后的配置信息来执行抓取任务;“删除”操作是删除用户不需要的抓取任务,将会删除保存在MySQL数据库及Redis数据库中相关的数据。
在爬虫基于爬虫任务指令爬取任务从网页下载数据的过程中,需要考虑某些网站设置的对网站服务器进行频繁访问的反爬虫软件,因此,需要对爬虫进行部署和爬虫的运行状况进行实时管理。目前当某些网站检测有爬虫软件正在频繁的获取其服务器上的数据时,将会对此爬虫软件做出限制,从而使得爬虫软件不能获取到所需的数据。为了防止网络爬虫被某些网站限制,采用的措施通常有动态设置UserAgent、禁用cookies、延迟下载、减小并发数和使用代理,但是目前很多大型网站都是针对IP地址来设置反爬虫机制的,如果网站检测到同一个IP地址在短时间内过于频繁的访问该网站,将会限制此IP地址在一段时间内不能正常访问该网站。因此,最理想的解决办法就是拥有足够多的IP地址,本发明通过设置反爬虫机制来对爬虫进行部署和管理,所述反爬虫机制包括:基于用户指令,向云平台申请多个IP地址,在爬虫执行爬虫任务的过程中如果被所访问的网站限制,则从申请的多个IP地址中选择一个,使用该选择的IP地址来访问被限制访问的网站。具体地,如果当前使用的IP地址被禁用,就选择备用的IP地址。而在云平台上有大量的IP地址,这些IP地址也是可以被当成一种资源供用户使用,用户可以按需向云平台申请一定量的IP地址,在执行爬虫任务的过程中如果被所访问的网站限制,则从申请的多个IP地址中选择一个,使用此IP地址来访问该网站,以此来应对网站的反爬虫问题。当使用更换的IP地址后,可适当增加当前延迟下载的时间或者减小网页下载并发数,以防此IP地址再次被限制。
爬虫数据监控和管理
爬虫数据监控和管理包括在数据管理模块中对项目爬虫爬取到的数据进行监控和统计管理,并将统计后的信息通过数据展示单元进行可视化展示。具体地,数据管理模块以列表形式显示所有爬虫任务信息,其中显示的内容主要包括任务名称、任务开始时间、任务结束时间、总的URL数、已下载页面数、出错页面数和任务运行状态,这些信息主要是从MySQL数据库的crawler_task表中读取的。用户可在数据管理模块中进行数据上传、下载、删除和查询等操作。
爬虫节点管理
爬虫节点管理包括在节点管理模块中基于数据管理模块统计的信息对爬虫所运行的节点进行管理,以确保每个爬虫运行在相对应的爬虫节点上,所述爬虫节点为从云平台上申请的虚拟机。本发明的分布式爬虫管理方法用于管理多任务的网络爬虫,即在同一时刻可运行多个不同的抓取任务,由于用户需求不同,可能在某一段时间内需要执行大量的抓取任务,而在其他时候只执行较少的抓取任务,因而抓取任务量是动态变化的。传统的分布式网络爬虫为了使得在爬虫任务量较大的情况下也能高效率的抓取网页,通常采用较多的服务器来部署爬虫系统,但是当爬虫任务量较小时,各个服务器的资源利用率很小。本发明的网络爬虫构建在云平台上,从云平台上申请虚拟机作为爬虫节点,云平台提供的虚拟机资源通过简单的操作就能很容易获取到,因此为了在满足高效率抓取网页的同时提高资源的利用率,本发明将根据当前爬虫任务量来动态的调节爬虫节点数量。虚拟机管理结构主要包括预警机制和虚拟机池,预警机制是判断当前爬虫任务量是否达到增加或减少爬虫节点数量的条件,虚拟机池是为了减少申请虚拟机的时间而设置的一个缓冲池。此外,由于分布式网络爬虫需要部署在多台机器上,在爬取的过程中很可能会出现爬虫节点因为一些故障而宕机的情况。另外,对于抓取数据的量较大时,可能会增加新的爬行节点。因此,为了能够处理这样动态增加或移除爬虫节点的问题,需要对所有爬虫节点的运行状态进行监控及其管理。节点管理模块5通过Web页面显示当前所有爬虫节点的运行状态,显示的信息包括爬虫节点主机名、爬虫节点IP、爬虫任务数、爬虫节点是否处于任务抓取状态和爬虫节点是否正常,这些信息主要是从MySQL数据库的worker_node表中读取的。该模块涉及到心跳和发送心跳,控制节点上的接收心跳模块负责接收所有爬虫节点的心跳信息并将其保存到MySQL库中,发送心跳模块是运行在爬虫节点上的,它负责向控制节点发送心跳信息。为此,节点管理模块中的爬虫节点调整单元周期性检测是否需要增加爬虫节点或者减少爬虫节点,如果在预设的多个周期内,每个周期内检测的当前爬虫任务量都超过上限阈值,则增加爬虫节点;如果在预设的多个周期内,每个周期内检测的当前爬虫任务量都小于下限阈值,则减少爬虫节点;当前爬虫任务量基于下述公式来确定:
其中,P为当前爬虫任务量,P=1表示当前爬虫节点数量不能满足爬虫任务需求,需要增加爬虫节点,P=-1表示爬虫系统所拥有的爬虫节点数量远远高于实际爬虫任务需求,需要减少爬虫节点,c表示当前爬虫任务数,ui表示第i个爬虫任务的待抓取URL数,n表示当前处于运行状态的爬虫节点数,Fmax表示上限阈值,Fmin表示下限阈值。即在本发明中,网络爬虫会周期性的检测是否需要进行增加或减少爬虫节点,而且确定需要增加或减少爬虫节点不仅仅是根据一个周期内的爬虫任务执行情况来作判断,而是根据多个周期内的执行情况来进行判断。本文考虑5个周期,如果连续5个周期内都需要增加或减少爬虫节点数量就真正向云平台申请虚拟机。
此外,节点管理模块中的爬虫节点监控单元周期性检测爬虫节点发送的心跳包,如果在连续的多个周期内,在预定的时间内都没有收到某个爬虫节点发送的心跳包,则判定该爬虫节点已宕机。具体地,爬虫节点监控单元如果在T时间内没有收到爬虫节点发送过来的心跳包就认为该爬虫节点已宕机。T的选择依赖于当前网络状况、爬行虫点处理能力等多种不定因素,若T设置过大,会导致不能及时反映当前爬虫节点状态;T设置过小,会提高判断的效率,同时也会增加误判的可能性。对于在实际的应用中,可能会出现网络丢包、闪断和网络拥塞等情况,因此通常认为连续多次丢失心跳包才确定该节点发生了故障。
用户操作行为监控记录
用户操作行为监控记录包括在日志管理模块中对用户的操作行为进行监控记录,以便系统管理员可以清楚的知道哪个用户进行了什么操作,包括查询、删除与批量删除等操作,日志管理只有系统管理员能够对其进行操作。当日志管理模块中记录的信息显示系统错误导致平台无法正常运行时,由系统管理人员通过系统重启及人工修复的方式,从系统备份进行恢复。
爬虫任务代理管理
爬虫任务代理管理包括在代理管理模块中对需求代理管理的用户的爬虫任务进行代理管理。例如,某用户委托系统管理员代为管理其爬虫任务,则系统管理员可基于该授权来对其爬虫任务进行管理,包括新增、修改、删除和查询代理等操作。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (14)
1.一种分布式爬虫管理系统,其特征在于,包括:
主页展示模块,包括登录单元和数据展示单元,所述登录单元为用户访问分布式爬虫管理系统提供接口,用户通过在所述登录单元中输入相应的身份验证信息来访问所述分布式爬虫管理系统,所述数据展示单元用于展示与爬虫相关的数据;
项目管理模块,基于用户的指令创建项目,为所创建的项目分配相关的项目爬虫,并导入项目爬虫的任务源,以及对项目和项目爬虫进行管理;
爬虫管理模块,基于用户的指令,将用户编辑好的爬虫程序通过上传爬虫入口添加到分布式爬虫管理系统中,基于项目信息中的爬虫策略对爬虫进行部署,并对爬虫的运行状况进行管理;
数据管理模块,对项目爬虫爬取到的数据进行监控和统计管理,并将统计后的信息通过数据展示单元进行可视化展示;
节点管理模块,基于数据管理模块统计的信息对爬虫所运行的节点进行管理,以确保每个爬虫运行在相对应的爬虫节点上,所述爬虫节点为从云平台上申请的虚拟机;
日志管理模块,用于对用户的操作行为进行监控记录;
代理管理模块,基于需要代理管理的用户的授权,对授权用户的爬虫任务进行代理管理。
2.根据权利要求1所述的分布式爬虫管理系统,其特征在于,所述爬虫管理模块通过设置反爬虫机制来对爬虫进行部署和管理,其中,所述反爬虫机制包括:基于用户指令,向云平台申请多个IP地址,在爬虫执行爬虫任务的过程中如果被所访问的网站限制,则从申请的多个IP地址中选择一个IP地址来访问被限制访问的网站。
3.根据权利要求2所述的分布式爬虫管理系统,其特征在于,当使用更换的IP地址访问被限制访问的网站后,增加当前延迟下载的时间或者减小网页下载并发数。
4.根据权利要求1所述的分布式爬虫管理系统,其特征在于,所述节点管理模块包括动态调整爬虫节点数的爬虫节点调整单元和监控爬虫节点的爬虫节点监控单元;
所述爬虫节点调整单元周期性检测是否需要增加爬虫节点或者减少爬虫节点,如果在预设的多个周期内,每个周期内检测的当前爬虫任务量都超过上限阈值,则增加爬虫节点;如果在预设的多个周期内,每个周期内检测的当前爬虫任务量都小于下限阈值,则减少爬虫节点;
当前爬虫任务量基于下述公式来确定:
其中,P为当前爬虫任务量,P=1表示当前爬虫节点数量不能满足爬虫任务需求,需要增加爬虫节点,P=-1表示爬虫系统所拥有的爬虫节点数量远远高于实际爬虫任务需求,需要减少爬虫节点,c表示当前爬虫任务数,ui表示第i个爬虫任务的待抓取URL数,n表示当前处于运行状态的爬虫节点数,Fmax表示上限阈值,Fmin表示下限阈值。
5.根据权利要求4所述的分布式爬虫管理系统,其特征在于,所述爬虫节点监控单元周期性检测爬虫节点发送的心跳包,如果在连续的多个周期内,在预定的时间内都没有收到某个爬虫节点发送的心跳包,则判定该爬虫节点已宕机。
6.根据权利要求4或5所述的分布式爬虫管理系统,其特征在于,所述预设的多个周期为5个周期。
7.根据权利要求1所述的分布式爬虫管理系统,其特征在于,所述数据展示单元用于展示如下信息:项目总数、节点总数、爬虫程序总数、爬虫实例总数、爬取页面任务总量、完成页面爬虫数量、爬取数据总量、爬取数据节点利用率、爬虫节点主机名、爬虫节点IP、爬虫节点是否处于任务抓取状态和爬虫节点是否正常。
8.一种分布式爬虫管理方法,其特征在于,包括:
在主页展示模块的登录单元中输入相应的身份验证信息来访问所述分布式爬虫管理系统,并在主页展示模块的数据展示单元中展示与爬虫相关的数据;
在项目管理模块中输入创建项目的指令来创建项目,为所创建的项目分配相关的项目爬虫,并导入项目爬虫的任务源,以及对项目和项目爬虫进行管理;
在爬虫管理模块中将编辑好的爬虫程序通过上传爬虫入口添加到分布式爬虫管理系统中,并基于项目信息中的爬虫策略对爬虫进行部署,并对爬虫的运行状况进行管理;
在数据管理模块中对项目爬虫爬取到的数据进行监控和统计管理,并将统计后的信息通过数据展示单元进行可视化展示;
在节点管理模块中基于数据管理模块统计的信息对爬虫所运行的节点进行管理,以确保每个爬虫运行在相对应的爬虫节点上,所述爬虫节点为从云平台上申请的虚拟机;
在日志管理模块中对用户的操作行为进行监控记录;
在代理管理模块中对需求代理管理的用户的爬虫任务进行代理管理。
9.根据权利要求8所述的分布式爬虫管理方法,其特征在于,在所述爬虫管理模块中设置反爬虫机制来对爬虫进行部署和管理,其中,所述反爬虫机制包括:基于用户指令,向云平台申请多个IP地址,在爬虫执行爬虫任务的过程中如果被所访问的网站限制,则从申请的多个IP地址中选择一个IP地址来访问被限制访问的网站。
10.根据权利要求9所述的分布式爬虫管理方法,其特征在于,当使用更换的IP地址访问被限制访问的网站后,增加当前延迟下载的时间或者减小网页下载并发数。
11.根据权利要求8所述的分布式爬虫管理方法,其特征在于,在所述节点管理模块的爬虫节点调整单元中周期性检测是否需要增加爬虫节点或者减少爬虫节点,如果在预设的多个周期内,每个周期内检测的当前爬虫任务量都超过上限阈值,则增加爬虫节点;如果在预设的多个周期内,每个周期内检测的当前爬虫任务量都小于下限阈值,则减少爬虫节点;
当前爬虫任务量基于下述公式来确定:
其中,P为当前爬虫任务量,P=1表示当前爬虫节点数量不能满足爬虫任务需求,需要增加爬虫节点,P=-1表示爬虫系统所拥有的爬虫节点数量远远高于实际爬虫任务需求,需要减少爬虫节点,c表示当前爬虫任务数,ui表示第i个爬虫任务的待抓取URL数,n表示当前处于运行状态的爬虫节点数,Fmax表示上限阈值,Fmin表示下限阈值。
12.根据权利要求8所述的分布式爬虫管理方法,其特征在于,在所述节点管理模块的爬虫节点监控单元中周期性检测爬虫节点发送的心跳包,如果在连续的多个周期内,在预定的时间内都没有收到某个爬虫节点发送的心跳包,则判定该爬虫节点已宕机。
13.根据权利要求11或12所述的分布式爬虫管理方法,其特征在于,所述预设的多个周期为5个周期。
14.根据权利要求8所述的分布式爬虫管理方法,其特征在于,在所述数据展示单元中展示如下信息:项目总数、节点总数、爬虫程序总数、爬虫实例总数、爬取页面任务总量、完成页面爬虫数量、爬取数据总量、爬取数据节点利用率、爬虫节点主机名、爬虫节点IP、爬虫节点是否处于任务抓取状态和爬虫节点是否正常。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710092369.3A CN106874487B (zh) | 2017-02-21 | 2017-02-21 | 一种分布式爬虫管理系统及其方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710092369.3A CN106874487B (zh) | 2017-02-21 | 2017-02-21 | 一种分布式爬虫管理系统及其方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106874487A true CN106874487A (zh) | 2017-06-20 |
CN106874487B CN106874487B (zh) | 2020-08-18 |
Family
ID=59166701
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710092369.3A Active CN106874487B (zh) | 2017-02-21 | 2017-02-21 | 一种分布式爬虫管理系统及其方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106874487B (zh) |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107454083A (zh) * | 2017-08-08 | 2017-12-08 | 四川长虹电器股份有限公司 | 反爬虫的方法 |
CN107943588A (zh) * | 2017-11-22 | 2018-04-20 | 用友金融信息技术股份有限公司 | 数据处理方法、系统、计算机设备和可读存储介质 |
CN107958052A (zh) * | 2017-11-28 | 2018-04-24 | 广州启生信息技术有限公司 | 一种大规模网络爬虫程序的访问方法及装置 |
CN108228431A (zh) * | 2018-01-04 | 2018-06-29 | 北京中关村科金技术有限公司 | 一种配置化爬虫质量监测的方法及系统 |
CN108595510A (zh) * | 2018-03-22 | 2018-09-28 | 成都数聚城堡科技有限公司 | 一种基于浏览器端的爬虫、分布式爬虫系统及方法 |
CN109063216A (zh) * | 2018-10-17 | 2018-12-21 | 珠海市智图数研信息技术有限公司 | 一种分布式垂直业务搜索爬虫框架 |
CN109213480A (zh) * | 2017-06-30 | 2019-01-15 | 武汉斗鱼网络科技有限公司 | 一种开发后台管理页面的方法、存储介质、设备及系统 |
CN109302299A (zh) * | 2017-07-25 | 2019-02-01 | 北京国双科技有限公司 | 一种网站断链检测方法及装置 |
CN109697117A (zh) * | 2017-10-20 | 2019-04-30 | 中国电信股份有限公司 | 终端控制方法、装置以及计算机可读存储介质 |
CN109815011A (zh) * | 2018-12-29 | 2019-05-28 | 东软集团股份有限公司 | 一种数据处理的方法和装置 |
CN110263266A (zh) * | 2019-05-20 | 2019-09-20 | 江苏大学 | 一种基于微信小程序和爬虫的数据展示方法 |
CN110457556A (zh) * | 2019-07-04 | 2019-11-15 | 重庆金融资产交易所有限责任公司 | 分布式爬虫系统架构、爬取数据的方法和计算机设备 |
CN110928688A (zh) * | 2019-11-29 | 2020-03-27 | 电子科技大学 | 一种分布式爬虫任务的调度系统及方法 |
CN110941788A (zh) * | 2019-12-17 | 2020-03-31 | 山西云时代技术有限公司 | 边缘计算的云环境分布式Web页面提取分析系统和方法 |
WO2020237799A1 (zh) * | 2019-05-29 | 2020-12-03 | 网宿科技股份有限公司 | 一种网站探测的方法和系统 |
CN112486741A (zh) * | 2020-12-11 | 2021-03-12 | 深圳前瞻资讯股份有限公司 | 一种多进程多线程分布式爬虫方法、系统及装置 |
CN112559839A (zh) * | 2019-09-10 | 2021-03-26 | 北京国双科技有限公司 | 数据获取方法、装置、计算机设备以及存储介质 |
CN112765438A (zh) * | 2021-01-25 | 2021-05-07 | 北京星汉博纳医药科技有限公司 | 一种基于微服务的自动爬虫管理方法 |
CN113220549A (zh) * | 2021-04-01 | 2021-08-06 | 深圳市猎芯科技有限公司 | 爬虫数据监控方法、系统、计算机设备及存储介质 |
US11222083B2 (en) | 2019-08-07 | 2022-01-11 | International Business Machines Corporation | Web crawler platform |
CN115131155A (zh) * | 2022-05-11 | 2022-09-30 | 李益非 | 一种基于投资管理云平台及投资管理方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103310012A (zh) * | 2013-07-02 | 2013-09-18 | 北京航空航天大学 | 一种分布式网络爬虫系统 |
CN103491165A (zh) * | 2013-09-22 | 2014-01-01 | 复旦大学 | 自动检测屏蔽的通用分布式爬虫系统 |
CN103559219A (zh) * | 2013-10-18 | 2014-02-05 | 北京京东尚科信息技术有限公司 | 分布式网络爬虫抓取任务调度方法、调度端设备及抓取节点 |
CN103997438A (zh) * | 2014-06-03 | 2014-08-20 | 浪潮集团有限公司 | 一种云计算中自动监控分布式网络爬虫的方法 |
CN104834550A (zh) * | 2015-05-29 | 2015-08-12 | 北京京东尚科信息技术有限公司 | 对分布式网络爬虫进行更新的方法及装置 |
CN105260388A (zh) * | 2015-09-11 | 2016-01-20 | 广州极数宝数据服务有限公司 | 一种分布式垂直爬虫服务系统的优化方法 |
CN106021608A (zh) * | 2016-06-22 | 2016-10-12 | 广东亿迅科技有限公司 | 一种分布式爬虫系统及其实现方法 |
US20170026263A1 (en) * | 2013-09-26 | 2017-01-26 | Wi-Lan Labs, Inc. | File Block Placement in a Distributed Network |
-
2017
- 2017-02-21 CN CN201710092369.3A patent/CN106874487B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103310012A (zh) * | 2013-07-02 | 2013-09-18 | 北京航空航天大学 | 一种分布式网络爬虫系统 |
CN103491165A (zh) * | 2013-09-22 | 2014-01-01 | 复旦大学 | 自动检测屏蔽的通用分布式爬虫系统 |
US20170026263A1 (en) * | 2013-09-26 | 2017-01-26 | Wi-Lan Labs, Inc. | File Block Placement in a Distributed Network |
CN103559219A (zh) * | 2013-10-18 | 2014-02-05 | 北京京东尚科信息技术有限公司 | 分布式网络爬虫抓取任务调度方法、调度端设备及抓取节点 |
CN103997438A (zh) * | 2014-06-03 | 2014-08-20 | 浪潮集团有限公司 | 一种云计算中自动监控分布式网络爬虫的方法 |
CN104834550A (zh) * | 2015-05-29 | 2015-08-12 | 北京京东尚科信息技术有限公司 | 对分布式网络爬虫进行更新的方法及装置 |
CN105260388A (zh) * | 2015-09-11 | 2016-01-20 | 广州极数宝数据服务有限公司 | 一种分布式垂直爬虫服务系统的优化方法 |
CN106021608A (zh) * | 2016-06-22 | 2016-10-12 | 广东亿迅科技有限公司 | 一种分布式爬虫系统及其实现方法 |
Cited By (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109213480A (zh) * | 2017-06-30 | 2019-01-15 | 武汉斗鱼网络科技有限公司 | 一种开发后台管理页面的方法、存储介质、设备及系统 |
CN109302299B (zh) * | 2017-07-25 | 2021-12-28 | 北京国双科技有限公司 | 一种网站断链检测方法及装置 |
CN109302299A (zh) * | 2017-07-25 | 2019-02-01 | 北京国双科技有限公司 | 一种网站断链检测方法及装置 |
CN107454083A (zh) * | 2017-08-08 | 2017-12-08 | 四川长虹电器股份有限公司 | 反爬虫的方法 |
CN109697117A (zh) * | 2017-10-20 | 2019-04-30 | 中国电信股份有限公司 | 终端控制方法、装置以及计算机可读存储介质 |
CN109697117B (zh) * | 2017-10-20 | 2021-03-09 | 中国电信股份有限公司 | 终端控制方法、装置以及计算机可读存储介质 |
CN107943588A (zh) * | 2017-11-22 | 2018-04-20 | 用友金融信息技术股份有限公司 | 数据处理方法、系统、计算机设备和可读存储介质 |
CN107958052A (zh) * | 2017-11-28 | 2018-04-24 | 广州启生信息技术有限公司 | 一种大规模网络爬虫程序的访问方法及装置 |
CN108228431A (zh) * | 2018-01-04 | 2018-06-29 | 北京中关村科金技术有限公司 | 一种配置化爬虫质量监测的方法及系统 |
CN108595510A (zh) * | 2018-03-22 | 2018-09-28 | 成都数聚城堡科技有限公司 | 一种基于浏览器端的爬虫、分布式爬虫系统及方法 |
CN109063216A (zh) * | 2018-10-17 | 2018-12-21 | 珠海市智图数研信息技术有限公司 | 一种分布式垂直业务搜索爬虫框架 |
CN109815011A (zh) * | 2018-12-29 | 2019-05-28 | 东软集团股份有限公司 | 一种数据处理的方法和装置 |
CN110263266A (zh) * | 2019-05-20 | 2019-09-20 | 江苏大学 | 一种基于微信小程序和爬虫的数据展示方法 |
WO2020237799A1 (zh) * | 2019-05-29 | 2020-12-03 | 网宿科技股份有限公司 | 一种网站探测的方法和系统 |
CN110457556A (zh) * | 2019-07-04 | 2019-11-15 | 重庆金融资产交易所有限责任公司 | 分布式爬虫系统架构、爬取数据的方法和计算机设备 |
CN110457556B (zh) * | 2019-07-04 | 2023-11-14 | 重庆金融资产交易所有限责任公司 | 分布式爬虫系统架构、爬取数据的方法和计算机设备 |
US11222083B2 (en) | 2019-08-07 | 2022-01-11 | International Business Machines Corporation | Web crawler platform |
CN112559839B (zh) * | 2019-09-10 | 2024-05-03 | 北京国双科技有限公司 | 数据获取方法、装置、计算机设备以及存储介质 |
CN112559839A (zh) * | 2019-09-10 | 2021-03-26 | 北京国双科技有限公司 | 数据获取方法、装置、计算机设备以及存储介质 |
CN110928688A (zh) * | 2019-11-29 | 2020-03-27 | 电子科技大学 | 一种分布式爬虫任务的调度系统及方法 |
CN110941788A (zh) * | 2019-12-17 | 2020-03-31 | 山西云时代技术有限公司 | 边缘计算的云环境分布式Web页面提取分析系统和方法 |
CN112486741A (zh) * | 2020-12-11 | 2021-03-12 | 深圳前瞻资讯股份有限公司 | 一种多进程多线程分布式爬虫方法、系统及装置 |
CN112765438A (zh) * | 2021-01-25 | 2021-05-07 | 北京星汉博纳医药科技有限公司 | 一种基于微服务的自动爬虫管理方法 |
CN112765438B (zh) * | 2021-01-25 | 2024-03-26 | 北京星汉博纳医药科技有限公司 | 一种基于微服务的自动爬虫管理方法 |
CN113220549A (zh) * | 2021-04-01 | 2021-08-06 | 深圳市猎芯科技有限公司 | 爬虫数据监控方法、系统、计算机设备及存储介质 |
CN115131155A (zh) * | 2022-05-11 | 2022-09-30 | 李益非 | 一种基于投资管理云平台及投资管理方法 |
CN115131155B (zh) * | 2022-05-11 | 2023-12-19 | 李益非 | 一种基于投资管理的云平台 |
Also Published As
Publication number | Publication date |
---|---|
CN106874487B (zh) | 2020-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106874487A (zh) | 一种分布式爬虫管理系统及其方法 | |
US9727405B2 (en) | Problem determination in distributed enterprise applications | |
CN109508422A (zh) | 多线程智能调度的高匿爬虫系统 | |
Cheng et al. | Evaluating the effectiveness of the rainbow self-adaptive system | |
US7383271B2 (en) | Centralized configuration data management for distributed clients | |
US8769346B2 (en) | Method and apparatus for adaptive declarative monitoring | |
JP5148607B2 (ja) | データベース管理における標準操作手順の自動化 | |
CN107071009A (zh) | 一种负载均衡的分布式大数据爬虫系统 | |
US7703019B2 (en) | Visual administrator for specifying service references to support a service | |
CN102571932B (zh) | 为在线应用用户提供状态服务 | |
CN102201047A (zh) | 一种计算机管理方法 | |
US20190057218A1 (en) | Providing data protection and privacy as a service in a cloud platform | |
CN106201754A (zh) | 任务信息分析方法及装置 | |
CN110764871A (zh) | 一种基于云平台的拟态化应用封装与控制系统和方法 | |
CN103618652A (zh) | 一种业务数据的审计和深度分析系统及其方法 | |
US7363368B2 (en) | System and method for transaction recording and playback | |
CN102255776A (zh) | 在线应用的状态监测方法及装置 | |
CN107239563A (zh) | 舆情信息动态监控方法 | |
CN107958052A (zh) | 一种大规模网络爬虫程序的访问方法及装置 | |
CN106385416B (zh) | 一种信息安全系统平台的构建方法及信息安全管理平台 | |
CN104598812B (zh) | 在沙箱中浏览网页方法及装置 | |
US20050216510A1 (en) | System and method to provide a visual administrator in a network monitoring system | |
Cisco | The Method Conclusion in Action | |
Cisco | The Method Conclusion in Action | |
CN115842642A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: 100070, No. 101-8, building 1, 31, zone 188, South Fourth Ring Road, Beijing, Fengtai District Patentee after: Guoxin Youyi Data Co., Ltd Address before: 9 / F, block B, ABP, 188 South Fourth Ring Road West, Fengtai District, Beijing 100070 Patentee before: SIC YOUE DATA Co.,Ltd. |