You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python:如何从weerlive.nl API返回字典提取树莓派气象站所需数据

从Weerlive.nl API响应中提取温度和湿度值

从荷兰皇家气象研究所(KNMI)的Weerlive.nl API获取的天气数据是一个仅包含liveweer键的字典,其对应值是两层嵌套的列表结构。要提取你需要的temp(温度)和lv(湿度)值,可以按以下步骤操作(以Python为例,适配树莓派环境):

代码实现

# 假设API返回的字典存储在这个变量中
weather_response = {"liveweer": [[{'plaats': 'Tilburg', 'timestamp': '1713019987', 'time': '13-04-2024 16:53', 'temp': '23.3', 'gtemp': '22.3', 'samenv': 'Licht bewolkt', 'lv': '48', 'windr': 'ZW', 'windrgr': '225', 'windms': '6', 'winds': '4', 'windk': '11.7', 'windkmh': '21.6', 'luchtd': '1020.5', 'ldmmhg': '765', 'dauwp': '11.7', 'zicht': '40', 'verw': 'Vandaag zonnige perioden, droog en vrij warm. Zondag frisser', 'sup': '06:45', 'sunder': '20:35', 'image': 'lichtbewolkt', 'd0weer': 'bewolkt', 'd0tmax': '22', 'd0tmin': '12', 'd0windk': '3', 'd0windknp': '10', 'd0windms': '5', 'd0windkmh': '19', 'd0windr': 'ZW', 'd0windrgr': '225', 'd0neerslag': '0', 'd0zon': '0', 'd1weer': 'halfbewolkt', 'd1tmax': '15', 'd1tmin': '10', 'd1windk': '3', 'd1windknp': '8', 'd1windms': '4', 'd1windkmh': '15', 'd1windr': 'W', 'd1windrgr': '270', 'd1neerslag': '20', 'd1zon': '50', 'd2weer': 'regen', 'd2tmax': '11', 'd2tmin': '7', 'd2windk': '3', 'd2windknp': '10', 'd2windms': '5', 'd2windkmh': '19', 'd2windr': 'ZW', 'd2windrgr': '225', 'd2neerslag': '90', 'd2zon': '20', 'alarm': '0', 'alarmtxt': ''}]]}

# 定位到实际的天气数据字典
weather_details = weather_response['liveweer'][0][0]

# 提取温度和湿度
temp_value = weather_details['temp']
humidity_value = weather_details['lv']

# 可选:转换为数值类型(方便后续计算或显示)
temp_value = float(temp_value)
humidity_value = int(humidity_value)

# 输出结果
print(f"当前温度: {temp_value}°C")
print(f"当前湿度: {humidity_value}%")

关键说明

  • weather_response['liveweer']获取到的是外层列表,通过两次[0]索引,就能拿到嵌套最内层的天气数据字典。
  • API返回的temp和lv都是字符串类型,如果你的气象站需要数值数据,记得转换成float或int类型。

内容的提问来源于stack exchange,提问作者jdelange

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 00:45:00