楔子
21世纪是信息时代,信息就是财富。数据(信息)采集是指从信息使用者的需要出发,通过各种渠道和形式获取相关信息的过程.。采集及时、准确、全面的信息是信息管理的基本前提,同时也是管理者决策的参考依据。
写论文时,从统计局网站粘贴几个数值;不定时将公示结果转存到Excel;批量把在线的高清美图下载到本地。这些都是 WEB 数据采集的日常例子。
信息采集最简单最原始的方式,就是人力直接操作,CTRL+C、CTRL+V一套组合拳下来,数据就到碗里来了👏🏻。不过,这数据量一旦上来,铁打的人都吃不消。于是乎,人们想到了用电脑来代替人工,爬虫程序就这样诞生了。
在此之前,我们应该先简单了解下网页内容渲染机制。
网页渲染机制
上图是 WEB 页面交互的简单模型,不谈及安全机制、浏览器兼容等😄。
常见自动化程序方案
所谓的自动化程序,就是用机器大批量地发起请求,拿到响应后再做处理。专业术语叫做
网页爬虫
或者网页机器人
。
模拟请求(基于代码或爬虫框架)
此方案需要我们至少熟悉一门编程语言(Python、Node.js、Java等),自行编写代码或者借助优秀的开源爬虫框架,实现数据获取。某些场景,还需要通过抓包分析目标网站的参数规则,然后通过组合式请求方能达到目的。
这里罗列下我用过或收藏且还在不断更新维护的框架:
名称 | 开发语言 | 简介 |
---|---|---|
Scrapy | Python | A fast high-level web crawling & scraping framework for Python. |