PyParser is a data cleaning system for extracting the data from the content where is crawled by the web spiders.
在常规的数据采集系统中,我们通常将爬虫采集部分和数据提取验证部分糅合在一个项目系统中,在爬虫进行采集的同时进行数据的提取、清洗、校验,这样的系统在数据规模较小、数据维度少、数据提取难度低
的业务中可以实现快速轻便地开发。
然而,当数据规模较大,数据维度多,数据提取、清洗、校验难度高
的场景下,上述系统可能会遇到以下问题:
流程分工不明确
,当面对数据规模大且结构繁杂、且做足了反爬措施的网站时,爬虫工程师需要同时关注网站本身的采集部分和后续的数据处理部分。需要你增加字段,在系统没有持久化原始网页的时候,就需要重新进行爬取
(这时候你大概率会吐槽说:“wc,又要我重爬?”),当数据量大的时候,重新进行采集可能会增加项目的成本甚至导致项目延期。部分字段漏解析、字段值解析错误的情况
,如果系统没有持久化原始网页,就可能会导致重新采集。流程分工比较明确的情况是,爬虫工程师只需要负责网站网页的采集和应对反爬措施,数据的处理交由数据工程师进行
。PyParser框架正是为了解决以上遇到的问题,总的而言,PyParser可以做到:
系统的主要部分有: