The invention discloses a distributed crawler management system: a system for login and data display page display module; create the project and project management module for the management of the project management module; crawler deployment and management of the project of the data management module of crawler crawler; data in monitoring and management of the crawler node node; management module management and web crawler on the user's agent management module, agent management in which the node is a virtual machine for reptiles from the cloud on the platform. In addition, the invention also provides a distributed crawler management method. The distributed crawler management system of the invention can provide anti crawling solutions and management and analysis of reptiles and data so as to provide a safe and efficient data crawling solution for enterprises or individuals.
【技术实现步骤摘要】
一种分布式爬虫管理系统及其方法
本专利技术涉及一种分布式爬虫管理系统和方法,具体涉及一种能够对爬虫和爬虫爬取的数据进行管理与分析的分布式爬虫管理系统及其方法。
技术介绍
传统爬虫管理方式去互联网上爬取数据会被一些网站的反爬机制屏蔽掉,导致爬虫开发人员辛辛苦苦开发出来的爬虫爬取不到有用的数据,即使调整爬虫后过一段时间又不能正常爬取数据,反复的修改,对于企业来说既费时间又费金钱,对于开发人员来说重复单调的工作没有任何意义。因此,亟待提供一种能够对爬虫及其爬取的数据进行有效管理和分析的方案。
技术实现思路
为解决上述技术问题,本专利技术提供一种分布式爬虫管理系统,该系统是一个功能强大的爬虫管理平台,主要提供防反爬解决方案以及爬虫和数据的管理与分析,为企业(或个人)提供安全、高效的数据爬取解决方案。本专利技术采用的技术方案为:本专利技术的实施例提供一种分布式爬虫管理系统,包括:主页展示模块,包括登录单元和数据展示单元,所述登录单元为用户访问分布式爬虫管理系统提供接口,用户通过在所述登录单元中输入相应的身份验证信息来访问所述分布式爬虫管理系统,所述数据展示单元用于展示与爬虫相关的数据;项目管理模块,基于用户的指令创建项目,为所创建的项目分配相关的项目爬虫,并导入项目爬虫的任务源,以及对项目和项目爬虫进行管理;爬虫管理模块,基于用户的指令,将用户编辑好的爬虫程序通过上传爬虫入口添加到分布式爬虫管理系统中,基于项目信息中的爬虫策略对爬虫进行部署,并对爬虫的运行状况进行管理;数据管理模块,对项目爬虫爬取到的数据进行监控和统计管理,并将统计后的信息通过数据展示单元进行可视化展示 ...
【技术保护点】
一种分布式爬虫管理系统,其特征在于,包括:主页展示模块,包括登录单元和数据展示单元,所述登录单元为用户访问分布式爬虫管理系统提供接口,用户通过在所述登录单元中输入相应的身份验证信息来访问所述分布式爬虫管理系统,所述数据展示单元用于展示与爬虫相关的数据;项目管理模块,基于用户的指令创建项目,为所创建的项目分配相关的项目爬虫,并导入项目爬虫的任务源,以及对项目和项目爬虫进行管理;爬虫管理模块,基于用户的指令,将用户编辑好的爬虫程序通过上传爬虫入口添加到分布式爬虫管理系统中,基于项目信息中的爬虫策略对爬虫进行部署,并对爬虫的运行状况进行管理;数据管理模块,对项目爬虫爬取到的数据进行监控和统计管理,并将统计后的信息通过数据展示单元进行可视化展示;节点管理模块,基于数据管理模块统计的信息对爬虫所运行的节点进行管理,以确保每个爬虫运行在相对应的爬虫节点上,所述爬虫节点为从云平台上申请的虚拟机;日志管理模块,用于对用户的操作行为进行监控记录;代理管理模块,基于需要代理管理的用户的授权,对授权用户的爬虫任务进行代理管理。
【技术特征摘要】
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所述的分布式爬虫管理系统,其特征在于,所述数据展示单元用于展示如下信息:项目总数、节点总数、爬虫程序总数、爬虫实例总数、爬取页面任务总量、完成页面爬虫数量、爬取数据总量、爬取数据节点利用率、爬虫节...
【专利技术属性】
技术研发人员:刘希,陈进宝,刘光辉,
申请(专利权)人:国信优易数据有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。