一种面向互联网文本数据采集框架的设计
2021-09-23贺宗平王正路
贺宗平 王正路
(1.南京审计大学信息化办公室 江苏省南京市 211815 2.江苏师范大学信息化建设与管理处 江苏省徐州市 221116)
互联网文本数据采集能力是目前各种数据集成、应用系统关注的一项核心支撑能力,在各种系统开发中有着重要的作用。各种网站、web应用系统的文本数据的获取方式存在一定规律性和相似性,网站文本数据的利用,诸如NLP相关研究的价值较高。因此,研究面向互联网文本数据采集的框架具有重要的现实意义,并且能够提供分布式、组件化和配置化的框架能力。
1 采集框架设计
1.1 Scrapy概述
Scrapy是适用于Python的一个快速、高层次的屏幕抓取和Web抓取框架,用于抓取Web站点并从页面中提取结构化的数据。Scrapy用途广泛,可以用于数据挖掘、监测和自动化测试。Scrapy是一个适用爬取网站数据、提取结构性数据的应用程序框架,它可以应用在广泛领域:Scrapy常应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中。通常我们可以很简单的通过Scrapy框架实现一个爬虫,抓取指定网站的文字或图片等内容。Scrapy架构示意图如图1所示。
Scrapy Engine框架核心:负责爬虫采集器、采集流水线、分析下载器、调度器之间的信息交互、数据传输等;
Scheduler调度器:根据Scrapy Engine发送的Requests请求,按照需求排列进入队列,当Scrapy Engine进行处理时,调度器将此请求转交处理;
Downloader分析下载器:负责与Scrapy Engine所有Request请求进行分析过滤获取,并将获取到的Responses内容传给Scrapy Engine,再转交给Spider来处理;
Spider爬虫:负责对所有Response内容的分析处理过滤,从其中提取处理数据,获取指定字段所需要的数据,并将需要追踪采集的URL提交框架,重新进入Scheduler调度器;……
