1.一种分布式爬虫系统架构,其特征在于,所述架构的设计使用HTTP服务注册的方式,将不同的模块进行隔离,不同的模块之间使用消息队列的方式进行相互的访问,所述架构包括:任务发布模块,用于发布爬虫任务;
爬虫服务模块,用于存储以服务形式存在的不同的爬虫服务,不同的所述爬虫服务完成不同的爬虫任务;
爬虫模块,用于接收所述任务发布模块发布的爬虫任务,并依据所述爬虫任务,到所述爬虫服务模块中调用与所述爬虫任务对应的爬虫服务,利用所述爬虫服务到目标网站进行爬取动作,得到对应的原始爬虫数据;
第一数据存储模块,用于存储所述原始爬虫数据。
2.一种分布式爬虫爬取数据的方法,基于如权利要求1所述的分布式爬虫系统架构,其特征在于,包括:利用所述任务发布模块获取爬虫任务,并将所述爬虫任务发送给所述爬虫模块,所述爬虫任务包括目标网站和爬取要求;
所述爬虫模块获取到所述爬虫任务后,到所述爬虫服务模块中调用与所述爬取要求对应的目标爬虫服务,并利用所述目标爬虫服务,到所述目标网站上爬取原始爬虫数据,其中,所述爬虫服务模块中封装有至少一个以服务形式封装的爬虫服务;
将爬取的所述原始爬虫数据存储到预设的第一存储模块。
3.根据权利要求2所述的分布式爬虫爬取数据的方法,其特征在于,所述将所述爬虫任务发送给所述爬虫模块的步骤,包括:所述任务发布模块以消息队列的形式发送所述爬虫任务给所述爬虫模块。
4.根据权利要求2所述的分布式爬虫爬取数据的方法,其特征在于,所述分布式爬虫系统架构还包括数据清洗模块和第二存储模块,所述将爬取的所述原始爬虫数据存储到预设的第一存储模块的步骤之后,所述方法包括:利用所述数据清洗模块对所述第一存储模块中的原始爬虫数据进行清洗,得到清洗后的第一爬虫数据,并将所述第一爬虫数据存储到预设的第二存储模块。
5.根据权利要求2所述的分布式爬虫爬取数据的方法,其特征在于,所述分布式爬虫系统架构还包括日志及错误处理模块,所述方法还包括:利用所述日志及错误处理模块获取所述分布式爬虫系统架构中其它模块的日志数据,并获取所述日志数据中的错误日志;
根据预设规则处理所述错误日志对应的事件。
6.根据权利要求5所述的分布式爬虫爬取数据的方法,其特征在于,所述根据预设规则处理所述错误日志对应的事件的步骤之后,包括:利用所述日志及错误处理模块生成对应所述事件的错误报告,并将所述错误报告发送给预设的邮箱。
7.根据权利要求5所述的分布式爬虫爬取数据的方法,其特征在于,所述根据预设规则处理所述错误日志对应的事件的步骤,包括:利用所述日志及错误处理模块判断所述事件是否为爬虫失效;
若所述事件是爬虫失效,则将所述事件对应的爬虫任务重新发布。
8.根据权利要求2所述的分布式爬虫爬取数据的方法,其特征在于,所述分布式爬虫系统架构还包括后台管理模块,所述方法还包括:判断是否接收到所述后台管理模块传入的管理命令;
若是,则优先处理所述管理命令。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求2至8中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求2至8中任一项所述的方法的步骤。