基于科技服务信息智能抓取系统数据收集方法技术方案

技术编号:15956345 阅读:47 留言:0更新日期:2017-08-08 09:55
本发明专利技术涉及一种基于科技服务信息智能抓取系统数据收集方法,包括以下步骤:①数据抓取:爬虫的配置,用户通过客户端的配置模块、启动模块发布抓取任务,并设置要抓取的网站及设定相应的规则;②定时抓取任务:根据用户发布的任务动态加载到定时抓取任务列表中;③下载页面;④页面解析:解析队列中的页面;⑤待抓取URL;⑥数据处理和存储:对页面数据进行解析提取处理,对提取出的二维结构数据进行存储;本发明专利技术能够满足爬虫通用性要求,适合科技服务系统抓取需求,扩展方便,插件式开发;在具体业务逻辑上增加解析规则配置,抓取网页宽度、深度,抓取线程,数据库配置或索引配置,就可以开启智能化抓取采集信息。

【技术实现步骤摘要】
基于科技服务信息智能抓取系统数据收集方法
本专利技术涉及一种智能抓取方法,尤其涉及一种基于科技服务信息智能抓取系统数据收集方法。
技术介绍
爬虫,又称为蜘蛛,它不是昆虫的名称,而是人们为了形象描述计算机程序在网络不断通过定制的入口网址去提取网页的链接,并根据这些链接再度抓取提取更深的其它未知的链接,以此下去,将这样的程序抓取行为形容成类似爬虫似的动作,称之为爬虫,爬虫是一种自动获取网页内容的程序,是搜索引擎的重要组成部分。采用人工生成抓取包装器技术的抓取系统科技信息抽取结果精准,但是要对互联网上千个网站进行抓取包装器的生成和更新维护工作,普通垂直爬虫无法很好担负这一工作,只能依赖大量的人力参与。安全、高效的实时抓取技术;在要求高实时性抓取的时候,需要对抓取网站服务器频繁的发起链接和下载请求,这将会给对方服务器造成很大的压力,进而会导致对方采用封禁策略如拒绝访问等来保证服务器正常工作,这将导致抓取失败;同时高实时的抓取需求,非常耗费网络、服务器等硬件资源,导致成本上升。随着AJAX技术不断的普及,以及现在AngularJS这种Single-pageapplication框架的出现,现在js渲染出的页面越来越多;对于爬虫来说,这种页面是比较讨厌的:仅仅提取HTML内容,往往无法拿到有效的信息。
技术实现思路
为解决上述技术问题,本专利技术提供了一种基于科技服务信息智能抓取系统数据收集方法,本专利技术通过以下技术方案来实现:基于科技服务信息智能抓取系统数据收集方法,包括以下步骤:①数据抓取:爬虫的配置,用户通过客户端的配置模块、启动模块发布抓取任务,并设置要抓取的网站及设定相应的规则,包括编码、抓取间隔、超时时间、重试次数等;②定时抓取任务:根据用户发布的任务动态加载到定时抓取任务列表中;③下载页面:根据客户设置的抓取规则和抓取流程,进行宽度优先抓取算法开始遍历抓取网页并将抓取的页面下载下来,并放置到将要进行页面解析队列中等待页面解析;④页面解析:解析队列中的页面,利用Jsoup技术根据要抓取的信息和设置的抓取规则进行页面的解析,提取用户需要的数据信息;⑤待抓取URL:采用链接权重算法将解析过程中发现的新链接放置待抓取URL队列中等待线程的处理;⑥数据处理和存储:对页面数据进行解析提取处理,对提取出的二维结构数据进行存储。优选地,所述步骤①的配置模块、启动模块位于后台管理系统中,爬虫初始入口地址通过指定的爬虫网址列表文件进行静态导入,或者通过将爬虫入口网址放到数据库中进行指定。优选地,所述步骤③的抓取规则是对爬虫入口地址是将每一条合法的Http网址根据链接权重算法一行一条的放入到入口列表文件中,或是一条网址在数据库中存放一行,所述抓取流程如下:根据配置文件中的提供爬虫入口网址列表进行抓取,按照配置的抓取深度进行遍历,首先取一条网址进行抓取,然后读取第一层解析规则,将第一层的解析规划解析后得到的数据传递到第二层,第二层进行深度抓取的时候,采用第一层解析提取到的网址进行再次抓取,并根据解析规则列表中的规则进行解析,并将解析得到的数据同第一层进行合并,传递到第三层,以此类推,直到配置的最大层数,一条深度抓取结束后,会依次向上返回获取的数据,并根据数据配置将抓取提取到的数据保存到指定的存储介质中,所述的存储介质是磁盘空间上的自定义的数据结构文件,或者是分布式键值对形式的数据库,或者用solr索引分词后进行索引文件存储。优选地,所述步骤③的宽度优先抓取算法指的是大部分网站都是按照树状图来完成页面分布的,宽度优先抓取策略就是按照树状图结构,优先抓取同级链接,待同级链接抓取完成后,再抓取下一级链接。优选地,所述步骤⑤的链接权重算法,因为一个页面内并非所有的链接都参与权重传递,搜索引擎会将已经过滤过的链接再度剔除15%;但这种非完全遍历权重计算需要积累到一定数量的链接后才能再次开始计算,所以更新周期比较慢,无法满足用户对即时信息的需求;所以在此基础上,出现了实时权重分配抓取策略;即当蜘蛛完成抓取页面并入口后,马上进行权重分配,将权重重新分配待抓取链接库,然后蜘蛛根据权重高低来进行抓取。所述的链接权重算法,其算法公式为:其中R代表链接所获得的pagerank,S代表链接所包含的链接数量,Q代表是否参与传递,β代表阻尼因数。从公式中可以发现,决定链接权重的是Q,如果链接被发现作弊,或者搜索引擎人工清除,或者其他原因,Q被设为0,那么再多的外链都没用。β是阻尼因数,主要作用是防止权重0的出现,导致链接无法参与权重传递,以及防止作弊的出现。阻尼因数β一般为0.85。优选地,为了解决AngularJS这种Single-pageapplication框架渲染的页面,使用selenium,它定义了一个Downloader,在下载页面时,用浏览器内核进行渲染。本专利技术具有以下有益效果:本专利技术能够满足爬虫通用性要求,适合科技服务信息智能抓取系统数据收集的需求,扩展方便,插件式开发;在具体业务逻辑上增加抓取规则和抓取流程配置,抓取网页宽度、深度,数据库配置或索引配置,就可以开启智能化抓取采集信息。附图说明图1是本专利技术的流程示意图。图2是本专利技术宽度优先抓取链接结构示意图。图3是本专利技术宽度优先抓取抓取顺序示意图。具体实施方式下面将结合本专利技术的附图,对本专利技术的技术方案进行清楚、完整地描述。基于科技服务信息智能抓取系统数据收集方法,包括以下步骤:①数据抓取:爬虫的配置,用户通过客户端的配置模块、启动模块发布抓取任务,并设置要抓取的网站及设定相应的规则,包括编码、抓取间隔、超时时间、重试次数等;②定时抓取任务:根据用户发布的任务动态加载到定时抓取任务列表中;③下载页面:根据客户设置的抓取规则和抓取流程,进行宽度、深度优先抓取算法开始遍历抓取网页并将抓取的页面下载下来,并放置到将要进行页面解析队列中等待页面解析;④页面解析:解析队列中的页面,利用Jsoup技术根据要抓取的信息和设置的抓取规则进行页面的解析,提取用户需要的数据信息;⑤待抓取URL:采用链接权重算法将解析过程中发现的新链接放置待抓取URL队列中等待线程的处理;⑥数据处理和存储:对页面数据进行解析提取处理,对提取出的二维结构数据进行存储。优选地,所述步骤①的配置模块、启动模块位于后台管理系统中,爬虫初始入口地址通过指定的爬虫网址列表文件进行静态导入,或者通过将爬虫入口网址放到数据库中进行指定。优选地,所述步骤③的抓取规则是对爬虫入口地址是将每一条合法的Http网址根据链接权重算法一行一条的放入到入口列表文件中,或是一条网址在数据库中存放一行,所述抓取流程如下:根据配置文件中的提供爬虫入口网址列表进行抓取,按照配置的抓取深度进行遍历,首先取一条网址进行抓取,然后读取第一层解析规则,将第一层的解析规划解析后得到的数据传递到第二层,第二层进行深度抓取的时候,采用第一层解析提取到的网址进行再次抓取,并根据解析规则列表中的规则进行解析,并将解析得到的数据同第一层进行合并,传递到第三层,以此类推,直到配置的最大层数,一条深度抓取结束后,会依次向上返回获取的数据,并根据数据配置将抓取提取到的数据保存到指定的存储介质中,所述的存储介质是磁盘空间上的自定义的数据结构文件,或者是分布式键值对形式的数据库,或者用sol本文档来自技高网...

【技术保护点】
基于科技服务信息智能抓取系统数据收集方法,其特征在于,其包括以下步骤:①数据抓取:爬虫的配置,用户通过客户端的配置模块、启动模块发布抓取任务,并设置要抓取的网站及设定相应的规则,包括编码、抓取间隔、超时时间、重试次数等;②定时抓取任务:根据用户发布的任务动态加载到定时抓取任务列表中;③下载页面:根据客户设置的抓取规则和抓取流程,进行宽度优先抓取算法开始遍历抓取网页,并将抓取的页面下载下来,并放置到将要进行页面解析队列中等待页面解析;④页面解析:解析队列中的页面,利用

【技术特征摘要】
1.基于科技服务信息智能抓取系统数据收集方法,其特征在于,其包括以下步骤:①数据抓取:爬虫的配置,用户通过客户端的配置模块、启动模块发布抓取任务,并设置要抓取的网站及设定相应的规则,包括编码、抓取间隔、超时时间、重试次数等;②定时抓取任务:根据用户发布的任务动态加载到定时抓取任务列表中;③下载页面:根据客户设置的抓取规则和抓取流程,进行宽度优先抓取算法开始遍历抓取网页,并将抓取的页面下载下来,并放置到将要进行页面解析队列中等待页面解析;④页面解析:解析队列中的页面,利用Jsoup技术根据要抓取的信息和设置的抓取规则进行页面的解析,提取用户需要的数据信息;⑤待抓取URL:采用链接权重算法将解析过程中发现的新链接放置待抓取URL队列中等待线程的处理;⑥数据处理和存储:对页面数据进行解析提取处理,对提取出的二维结构数据进行存储。2.根据权利要求1所述的基于科技服务信息智能抓取系统数据收集方法,其特征在于,所述步骤①的配置模块、启动模块位于后台管理系统中,爬虫初始入口地址通过指定的爬虫网址列表文件进行静态导入,或者通过将爬虫入口网址放到数据库中进行指定。3.根据权利要求1所述的基于科技服务信息智能抓取系统数据收集方法,其特征在于,所述步骤③的抓取规则是对爬虫入口地址是将每一条合法的Http网址根据链接权重算法一行一条的放入到入口列表文件中,或是一条网址在数据库中存放一行,所述抓取流程如下:根据配置文件中的提供爬虫入口网址列表进行抓取,按照配置的抓取深度进行遍历,首先取一条网址进行抓取,然后读取第一层解析规则,将第一层的解析规划解析后得到的数据...

【专利技术属性】
技术研发人员:陈文海霍英霞丁平黄美珍陈劲峰姚蕴佘文文马晓贾旭闫斌斌柏道菲张军成华娟
申请(专利权)人:山东辰华科技信息有限公司
类型:发明
国别省市:山东,37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1