一、确定爬取数据网站
天气后报 这个网站的数据挺齐全的 重要的是容易爬取!!!
二、观察网址信息
通过观察不同城市和日期的网址,可以发现是由api/{城市拼音}-{年份日期}.html构成,所以我们爬取不同城市的数据时只需要替换{}的内容,通过for循环来爬取数据。
三、数据采集
之后我们使用xpath对要爬取的数据进行定位,可以看到只需要循环遍历td标签就能获取数据这里有一个小细节,我们如果想要按照年月日排列的数据,td标签从第二行开始,最后写入表头即可。
循环爬取数据部分如上所示。这里有个地方需要注意,如果要爬取2014年1月到2021年5月的数据,我们需要设置起始和结束的年份和月份,如果当前年份等于结束年份,就对当前月份与结束月份进行判断,从而达到爬取的效果。
最后在写入表头数据即可。
四、结语
使用xpath爬取这个网站的数据是可以的 但是速度会比较慢。写出来xpath后可以用scrapy爬取 ,爬取速度会快很多。