![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=1738917947-YapPMu9sTdpzvRGfCZ3LvPWjkmyNY0ph-0-639879df41e6d78e58fea688606242d0)
图3-1
获取个人认证key之后,下一步是阅读API说明(开发者)文档。
免费用户只能访问一个服务器节点,其对应的接口地址如图3-2所示。
![img](https://epubservercos.yuewen.com/3DAE1E/17545851106441906/epubprivate/OEBPS/Images/txt003_2.jpg?sign=1738917947-ciRhz41BERcOYjMxXJn8kqekUWQdoCe6-0-934d70334f7304c64b36d53597bf202b)
图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=1738917947-qAtNra4ETDhJGZD6c1XEHZLWsCvnvbgu-0-6ebfe9a0049963627420ec86a422f5d2)
图3-3
只要编写代码访问接口地址,就可以返回数据。服务器返回的数据是JSON格式的数据,也就是Python中的字典。
通过阅读城市代码内容可以知道,API提供了3181个城市的天气预报,如图3-4所示。
![img](https://epubservercos.yuewen.com/3DAE1E/17545851106441906/epubprivate/OEBPS/Images/txt003_4.jpg?sign=1738917947-UlVYCv2nG5UIXx07Kg3PftqtNfXenwIM-0-40d69b184ff83b20152ed9fa5f2dc19f)
图3-4
城市代码可以复制到本地文件,也可以通过requests.get()方法直接从网上获取,如图3-5所示。
![img](https://epubservercos.yuewen.com/3DAE1E/17545851106441906/epubprivate/OEBPS/Images/txt003_5.jpg?sign=1738917947-fOOxARx5FZ3atV5IR5ehX7XbVdkqXNyE-0-a3399e659f3634e390ffd264a2368607)
图3-5