一种分布式网络数据采集方法及其采集系统技术方案

技术编号:20926219 阅读:65 留言:0更新日期:2019-04-20 11:50
本发明专利技术涉及网络数据采集的技术领域,具体涉及一种分布式网络数据采集方法及其采集系统,该方法包括通过调度器对请求队列中的链接进行去重,并将请求队列分配给相应的从机节点进行网络数据采集;在某一采集节点的网络数据采集行为遭到所采集的网站的攻击行为时,触发相应的防御机制;防御机制根据攻击行为判断攻击类型,并判断攻击类型与该采集节点所对应的从机节点预设的防御类型是否匹配;匹配时,执行与防御类型对应的防御措施来解除攻击;不匹配时,取消该采集节点的网络数据采集行为,并将未采集的请求队列返回至调度器等待重新分配,解决了在正常的网络数据采集工作遭到所采集的网站错误攻击时,能够及时的采取相应的措施解除危机。

A Distributed Network Data Acquisition Method and Its Acquisition System

The invention relates to the technical field of network data acquisition, in particular to a distributed network data acquisition method and its acquisition system. The method includes removing the links in the request queue through a dispatcher and assigning the request queue to the corresponding slave nodes for network data acquisition; the network data acquisition behavior of a certain acquisition node is attacked by the collected website. When attacking, the corresponding defense mechanism is triggered; the defense mechanism judges the attack type according to the attack behavior, and judges whether the attack type matches the defense type presupposed by the slave node corresponding to the acquisition node; when matching, the defense measures corresponding to the defense type are executed to relieve the attack; when mismatching, the network data acquisition behavior of the acquisition node is cancelled, and no acquisition is made. The request queue returns to the dispatcher waiting for redistribution, which solves the problem that the normal network data acquisition work is attacked by the errors of the collected websites, and can take corresponding measures to solve the crisis in time.

【技术实现步骤摘要】
一种分布式网络数据采集方法及其采集系统
本专利技术涉及网络数据采集的
,具体涉及一种分布式网络数据采集方法及其采集系统。
技术介绍
网络数据采集是指利用互联网搜索引擎技术实现有针对性、行业性和精准性的数据抓取,并按照相应的规则进行数据归类,形成数据库文件的一个过程。公开号为CN108121706A的专利一种分布式爬虫的优化方法,所述该分布式爬虫的优化方法具体步骤如下:调度中心下发任务;爬虫按URL抓取网页内容;解析器解析网页内容;如果网页更新较多,则把网页内容返回给数据仓库;解析器解析网页中的链接,在本地先用布隆过滤器进行去重;把通过了本地去重的URL进行Hash,该专利技术爬虫系统在对网页更新频率的处理上,规避了复杂的算法,提高爬虫的工作效率。专利技术人在实践中,发现上述现有技术中存在以下缺陷:在采集农业网站站点的数据信息时,爬虫工作虽然遵从了Robots协议与网站进行交互,但长时间的和/或者频繁的正常的爬虫工作可能会被该网站的反爬虫错误的攻击,无法进行正常的抓取工作。
技术实现思路
为了解决上述技术问题,本专利技术的目的在于提供一种分布式网络数据采集方法,所采用的技术方案如下:本文档来自技高网...

【技术保护点】
1.一种分布式网络数据采集方法,其特征在于,该采集方法包括以下步骤:调度器对请求队列中的链接进行去重,并将所述请求队列分配给相应的从机节点进行网络数据采集;在某一采集节点的网络数据采集行为遭到所采集的网站的攻击行为时,触发相应的防御机制;所述防御机制根据所述攻击行为判断攻击类型,并判断所述攻击类型与该采集节点所对应的从机节点预设的防御类型是否相匹配;在所述攻击类型与防御类型相匹配时,执行与所述防御类型对应的防御措施来解除攻击,进而继续进行网络数据采集;在所述攻击类型与防御类型不匹配时,取消该采集节点的网络数据采集行为,并将未采集的请求队列返回至调度器等待重新分配。

【技术特征摘要】
1.一种分布式网络数据采集方法,其特征在于,该采集方法包括以下步骤:调度器对请求队列中的链接进行去重,并将所述请求队列分配给相应的从机节点进行网络数据采集;在某一采集节点的网络数据采集行为遭到所采集的网站的攻击行为时,触发相应的防御机制;所述防御机制根据所述攻击行为判断攻击类型,并判断所述攻击类型与该采集节点所对应的从机节点预设的防御类型是否相匹配;在所述攻击类型与防御类型相匹配时,执行与所述防御类型对应的防御措施来解除攻击,进而继续进行网络数据采集;在所述攻击类型与防御类型不匹配时,取消该采集节点的网络数据采集行为,并将未采集的请求队列返回至调度器等待重新分配。2.根据权利要求1所述的一种分布式网络数据采集方法,其特征在于,在所述采集节点的网络数据采集行为未遭到所采集的网站的攻击行为或者在解除攻击之后时,还包括:判断所述采集节点是否捕捉到新链接;在捕捉到新链接时,对所述新链接进行相关性评估,在所述新链接通过相关性评估后,将所述新链接发送给所述调度器进行去重,并将去重后的新链接加入到请求队列中;在没有捕捉到新链接时,将采集到的数据结果进行存储。3.根据权利要求1或2所述的一种分布式网络数据采集方法,其特征在于,所述调度器包括Redis数据库和MongoDB数据库,Redis数据库用于存放所述请求队列,MongoDB数据库用于存放采集的数据结果。4.根据权利要求3所述的一种分布式网络数据采集方法,其特征在于,在所述调度器对请求队列中的链接进行去重之前,还包括根据实际任务获取种子链接。5.根据权利要求3所述的一种分布式网络数据采集方法,其特征在于,所述防御机制至少包括以下防御机制中的一种或者多种:在所述攻击类型为基于Headers反爬虫时,则采取的防御措施为将浏览器的User-Agent添加到所述Scrapy的Headers中或者将Referer值修改为目标网站域名;在所述攻击类型为基于图形验证码反爬虫时,则采取的防御措施为利用Tesseract-OCR识别图形验证码,或者对相应的验证码进行二值化预处理、分割、模式训练后识别验证码;在所述攻击类型为动态页面反爬虫时,则采取的防御措施为...

【专利技术属性】
技术研发人员:王乐乐杨自尚韩宇星
申请(专利权)人:华南农业大学
类型:发明
国别省市:广东,44

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

1