① 结构分析
分析清楚 需要爬的页面结构,要爬哪些页面,页面的结构是怎样的,需不需要登录;有没有 ajax 接口,返回什么样的数据等。
② 数据抓取
如今的网页的数据,大体分为同步页面和 ajax 接口。
同步页面数据的抓取就需要我们先分析网页的结构,
node 有一个 cheerio 的工具,可以将获取的页面内容转换成 jquery 对象,
然后就可以用 jquery 强大的 dom API 来获取节点相关数据, 其实大家看源码,这些 API 本质也就是正则匹配。
ajax 接口数据一般都是 json 格式的,处理起来还是比较简单的。
③数据存储
抓取的数据后,会做简单的筛选,然后将需要的数据先保存起来,以便后续的分析处理。
当然我们可以用 MySQL 和 Mongodb 等数据库存储数据。为了方便,没有问题的话也可以直接采用文件存储。
④数据分析
因为我们最终是要展示数据的,所以我们要将原始的数据按照一定维度去处理分析,然后返回给客户端。
这个过程可以在存储的时候去处理,也可以在展示的时候,前端发送请求,后台取出存储的数据再处理。
⑤结果展示
这个是前端工程师的工作啦。