前言
MicroPython编程从openweather获取天气状况。
一、材料
Wemos D1 mini一块、面包板一块。
二、准备
只需将电脑与Wemos D1 mini连接,Wemos D1 mini具有连接WiFi功能。
需要去openweather网站注册,获得自己的API Key。API Key是通过邮件发送给你的。
三、代码
MicroPython的标准库中含有访问网站的相关库,可以直接使用,代码如下(示例):
import network, urequests, ujson, machine
sta_if = network.WLAN(network.STA_IF)
sta_if.active(True)
sta_if.connect('WiFi名称', 'WiFi密码') # 填写你自己的WiFi名称和密码
while not sta_if.isconnected():
pass
res = urequests.get( # openweather API 网址
"https://api.openweathermap.org/data/2.5/weather?" +
"q=" + "baicheng" + ",CN" + # 指定城市与国别
"&units=metric&lang=zh_tw&" + # 使用摄氏温度
"appid=" + # 以下填写你在openweather注册的 API key
"自己的API key")
j = ujson.loads(res.text); # 从 JSON 转成字典
# print(j) # 如果需要可以看具体的JSON内容
temp = j["main"]['temp']
hum = j["main"]['humidity']
weatherID = j["weather"][0]["id"] # 天气状况代码
weatherDesc = j["weather"][0]["description"] # 天气状况
print("北京:")
print("当前温度:", str(temp),"℃")
print("当前湿度:", str(hum),"%")
print("天气状况:", weatherDesc )