Python 3爬虫、数据清洗与可视化实战
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

第3章 用API爬取天气预报数据

3.1 注册免费API和阅读技术文档

本章示例接口为和风天气的天气预报,该网站为个人开发者提供免费的预报数据(有访问次数限制)。

注册地址:http://console.heweather.com

读者可自行访问官网注册,注册后在控制台看到个人认证的key(密钥),这个key是访问API的钥匙,如图3-1所示。

图3-1

获取key之后,下一步是阅读API说明(开发者)文档。

文档地址:https://www.heweather.com/documents/api/v5/url

免费用户只能访问一个服务器节点,其对应的接口地址如图3-2所示。

图3-2

接下来了解调用接口的方法。一般首次阅读说明文档时最好按次序阅读,从图3-3中可以看出这里共有3个参数。

图3-3

(1)city:代表城市,可以用汉字、拼音、城市代码、经纬度。

(2)key:代表用户的密钥。

(3)lang:代表语言,这个参数默认是中文,而且是可选参数。

了解参数后,这里确定要使用的参数是1和2。根据提示,组合接口地址,如下所示。

https://free-api.heweather.com/v5/weather?city=beijing&key=7d0daf2a85f64736a42261161cd3060b

只要编写代码访问接口地址,就可以返回数据。服务器返回的数据是JSON格式的数据,也就是Python中的字典。

通过阅读城市代码内容,可以知道API提供了3181个城市的天气预报,如图3-4所示。

图3-4

城市代码可以拷贝到本地文件,也可以通过requests.get()直接从网上获取,如图3-5所示。

图3-5