![Python 3 爬虫、数据清洗与可视化实战(第2版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/935/32517935/b_32517935.jpg)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
第3章 用API爬取天气预报数据
3.1 注册免费API和阅读技术文档
本章示例接口为某天气预报网站,该网站为个人开发者提供免费的预报数据(有访问次数限制)。
读者可自行访问官网注册,注册后在控制台可以看到个人认证key(密钥),其为访问API的钥匙,如图3-1所示。
![img](https://epubservercos.yuewen.com/3DAE1E/17545851106441906/epubprivate/OEBPS/Images/txt003_1.jpg?sign=1739315919-lEDCf1bEW8L69eqsKZoxeU2ugdPS4N7A-0-64f1d43f2c269eef928938e530da93d4)
图3-1
获取个人认证key之后,下一步是阅读API说明(开发者)文档。
免费用户只能访问一个服务器节点,其对应的接口地址如图3-2所示。
![img](https://epubservercos.yuewen.com/3DAE1E/17545851106441906/epubprivate/OEBPS/Images/txt003_2.jpg?sign=1739315919-jV1ZzQdhVhTjch01Z18OEPM2Tg2yskOA-0-6c7967d3e95b1894a81e0fae0956b579)
图3-2
接下来了解调用接口的方法。一般首次阅读说明文档时最好按次序阅读,从图3-3中可以看出这里共有3个参数。
(1)city:代表城市,可以用汉字、拼音、城市代码、经纬度。
(2)key:代表用户的密钥。
(3)lang:代表语言,该参数默认为中文,而且是可选参数。
了解参数后,这里确定要使用的参数是city和key。根据提示,组合接口地址(见图3-3中的请求URL示例)。
![img](https://epubservercos.yuewen.com/3DAE1E/17545851106441906/epubprivate/OEBPS/Images/txt003_3.jpg?sign=1739315919-3wko52yeG0qrH9cdzs1i6RNHJUvEJm67-0-5d072a3cbc008be711189e9caabfc7ea)
图3-3
只要编写代码访问接口地址,就可以返回数据。服务器返回的数据是JSON格式的数据,也就是Python中的字典。
通过阅读城市代码内容可以知道,API提供了3181个城市的天气预报,如图3-4所示。
![img](https://epubservercos.yuewen.com/3DAE1E/17545851106441906/epubprivate/OEBPS/Images/txt003_4.jpg?sign=1739315919-tlKfVQ7FEcOF1FQuAAzHnNZ3yUscnNE5-0-a51e9a8308e66c554d8b38d4325cd523)
图3-4
城市代码可以复制到本地文件,也可以通过requests.get()方法直接从网上获取,如图3-5所示。
![img](https://epubservercos.yuewen.com/3DAE1E/17545851106441906/epubprivate/OEBPS/Images/txt003_5.jpg?sign=1739315919-xGLrPQqlavUuMbvDxY5HSQLdvP0PBeKJ-0-c3a886be82c4d761dd30149286e44324)
图3-5