**DIY目标:**
使用树莓派实现每日自动发送天气预报邮件的功能。
**平台:**
树莓派4b
**步骤:**
1.注册 和风天气 获取一个免费的Key
2.使用Postman测试网站的API,了解参数和返回的天气数据格式。
3.写一个sh脚本,获取天气信息,并使用jq对信息进行提取。
4.自动发送邮件
1.注册 和风天气 获取一个免费的key
API是Application Programming Interface的英文缩写,我们将使用互联网API获取天气预报信息。
首先在和风天气网站注册账户:
https://id.heweather.com/login?redirect=https://console.heweather.com/my/service。
登录,进入 应用管理 新建应用,输入应用名称,然后添加KEY,类型选择WebAPI,前两种类型无法当作普通的站点。之后就可以看到一串数字和字母组成的key,记住她,并妥善保管。
2.使用Postman测试网站的API,了解参数和返回的天气数据格式。
我们可以使用Postman软件对目标网络API进行测试。了解API的输入参数和返回值格式。
postman下载地址:https://www.postman.com/downloads/
打开postman,新建标签页,选择GET,输入目标网址,这里我们可以参考和风天气的帮助文档:https://dev.heweather.com/docs/api/weather
通过这份文档可以发现,Postman中的网址可以输入https://free-api.heweather.net/s6/weather/{weather-type}?{parameters},其中,weather-type是你想知道的天气预报类型,比如now,lifestyle等,这里我们写成lifestyle,parameters需要填写城市和key的信息。在Postman中按照下图配置即可。
点击发送,就可以得到API返回值。
注意,这里的返回值格式是JSON,我们后期还需要用jq软件对其进行信息提取。
3.写一个sh脚本,获取天气信息,并使用jq对信息进行提取。
在树莓派中,我们要用到curl指令访问API站点,然后使用jq指令处理返回的信息。curl程序已经在系统中了,我们还需要下载jq程序。
sudo apt-get install jq
最后,来编写bash脚本:
#!/usr/bin/env bash
WEATHER=$(curl "https://free-api.hewea