最近两天工作之余,开始涉猎python,自动爬取了全国30+城市地铁图数据,这里分享下整个爬虫过程
1. 数据来源
首先分析全国各个城市地铁图的数据来源,无非就是百度或者高德,这次选择用高德作为数据来源。打开高德地铁图PC端官网 http://map.amap.com/subway/index.html?&1100,点击每个城市可以看到当前城市的地铁图,打开浏览器F12一下,可以很容易看到Ajax请求接口后,地铁图才绘制出来的。
分析得知,xhr请求的接口数据便是我们需要的一部分数据(包含线路名称、线路名称坐标、线路轨迹、站点名称、站点定位坐标等),另一部分数据则是直接在Dom节点中(包含站点名称坐标),所以我们要爬取的数据便是Ajax接口数据 + Dom节点数据,如图所示: