互联网上存在海量的数据,各式各样的数据每天展现在我们面前,同时众多的金融、医学和计算机等学科的研究课题,都需要获取众多的数据作为样本进行科学分析,传统的人工采集操作根本上很难胜任数据采集,即便是能够收集也需要耗费众多的时间成本,自动化网站采集应用而生。一般采集数据是各种客户端所呈现的结构化数据,例如浏览器,APP等。数据存储在客户端。采集数据不会在服务器端采集,一方面比较困难,另外这也是一种违法行为。很多客户端也要求提供验证,如用户名密码等。
网站采集的原理基本一致,例如国内用的比较多的采集器某头、某鱼等,首先由客户端发出请求,服务器接受请求后再返回相应的数据,而采集器就从返回的数据中找到对应的数据。采集器根据采集要求自动发出不同的请求,例如模拟人的点击过程或者自定规则。网站的数据获取非常依赖数据的结构,必须根据不同的数据结构制定不同的采集规则。基本上每个网页的数据结构都不同,因此必须根据具体的网页来制定规则。
下面以某网站的一个页面为例,说明下网站数据采集的过程。
- 确定需要获取数据的网页
网页的结构如下图所示,这是个微信小程序源码的下载页面,需要获取如下内容:1 源码名称(仿天猫首页);2 获取模板截图的地址