基于scrapy爬虫框架的数据采集系统及方法技术方案

技术编号:24331355 阅读:44 留言:0更新日期:2020-05-29 19:43
本发明专利技术公开了一种基于scrapy爬虫框架的数据采集系统及方法,包括:爬虫队列模块和爬虫执行模块;爬虫队列模块包括爬虫种子队列、爬虫种子处理单元和爬虫任务队列;爬虫种子队列用于存储爬虫任务;爬虫种子处理单元用于对爬虫种子队列中的爬虫任务进行去重筛选处理,并将去重筛选后的爬虫任务存储入爬虫任务队列;爬虫执行模块包括网页下载单元和URL挖掘单元;网页下载单元用于从爬虫任务队列中读取当前需要执行的爬虫任务,基于读取到的爬虫任务下载网页;URL挖掘单元用于在下载到的网页中提取到新的URL链接作为新的爬虫任务存入爬虫种子队列;实现对特定领域网站域名的深度挖掘,提升了系统的爬取广度。

Data acquisition system and method based on the framework of crawler

【技术实现步骤摘要】
基于scrapy爬虫框架的数据采集系统及方法
本专利技术属于数据采集
,具体地说,是涉及一种基于scrapy爬虫框架的数据采集系统及方法。
技术介绍
信息网络技术的快速发展,带来了网络信息量的指数性增长。在网络信息资源充足的条件下,为了快速、针对性获取相关网络信息,促使了搜索引擎的诞生。搜索引擎,是指运用特定的计算机程序按照一定的策略自动从因特网上搜集信息,对信息进行组织和处理以后,提供给用户检索服务。搜索引擎从因特网上搜集信息的过程,依赖于网络蜘蛛对相关网站信息的爬取。网络蜘蛛是一种自动浏览网络,分析网页内容的程序,是搜索引擎的重要组成部分。Scrapy是目前最主流的爬虫框架,它是基于twisted(用Python实现的基于事件驱动的网络引擎框架)异步网络库实现的,在爬取速度上相对其他爬虫是高效的,且具有可定制性。由于网络爬虫对I/O的要求较高,Scrapy将待爬取的URLs直接存储在内存中而非硬盘中,这样一来,在爬取网页过程中,当爬取的网页数量达到数万时,需要存储的URLs数量可能会超过百万甚至千万,再加上Python本文档来自技高网...

【技术保护点】
1.一种基于scrapy爬虫框架的数据采集系统,其特征在于,包括:/n爬虫队列模块,包括爬虫种子队列、爬虫种子处理单元和爬虫任务队列;所述爬虫种子队列,用于存储爬虫任务;所述爬虫种子处理单元,用于对爬虫种子队列中的爬虫任务进行去重筛选处理,并将去重筛选后的爬虫任务存储入爬虫任务队列;/n爬虫执行模块,包括网页下载单元和URL挖掘单元;所述网页下载单元,用于从爬虫任务队列中读取当前需要执行的爬虫任务,基于读取到的爬虫任务下载网页;所述URL挖掘单元,用于在下载到的网页中提取到新的URL链接作为新的爬虫任务存入所述爬虫种子队列。/n

【技术特征摘要】
1.一种基于scrapy爬虫框架的数据采集系统,其特征在于,包括:
爬虫队列模块,包括爬虫种子队列、爬虫种子处理单元和爬虫任务队列;所述爬虫种子队列,用于存储爬虫任务;所述爬虫种子处理单元,用于对爬虫种子队列中的爬虫任务进行去重筛选处理,并将去重筛选后的爬虫任务存储入爬虫任务队列;
爬虫执行模块,包括网页下载单元和URL挖掘单元;所述网页下载单元,用于从爬虫任务队列中读取当前需要执行的爬虫任务,基于读取到的爬虫任务下载网页;所述URL挖掘单元,用于在下载到的网页中提取到新的URL链接作为新的爬虫任务存入所述爬虫种子队列。


2.根据权利要求1所述的基于scrapy爬虫框架的数据采集系统,其特征在于,所述系统还包括:
任务调度模块,包括爬虫进程队列和进程管理器;
其中,所述进程管理器,用于根据控制信息和爬虫任务队列信息创建爬虫进程,将创建的爬虫进程加入所述爬虫进程队列并进行管理,以及控制所述网页下载单元下载网页;所述爬虫进程队列,用于存储当前正在执行、暂时挂起和已经结束的爬虫进程。


3.根据权利要求1所述的基于scrapy爬虫框架的数据采集系统,其特征在于,所述系统还包括:
Kafka消息库,用于存储所述爬虫种子队列。


4.根据权利要求1所述的基于scrapy爬虫框架的数据采集系统,其特征在于,所述系统还包括:
Redis数据库,用于存储所述爬虫任务队列。


5.根据权利要求1所述的基于scrapy爬虫框架的数据采集系统,其特征在于,所述系统还包括:
MongoDB数据库,用于存储所述网页下载单元下载的网页内容。


6.根据权利要求1所述的基于scrapy爬虫框架的数据采集系统,其特征在于,所述爬虫种子处理单元包括:
去重...

【专利技术属性】
技术研发人员:魏志强贾东宁聂为之刘安安苏育挺
申请(专利权)人:青岛海洋科学与技术国家实验室发展中心
类型:发明
国别省市:山东;37

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

1