jq提取USGS水温接口全量数据遇Cannot index array with string "value"错误求助
USGS水温数据全量提取jq命令调整方案
报错的核心原因是原命令仅通过[0]提取了数组的第一条数据,未正确遍历全量数组元素。调整逻辑为直接迭代value.timeSeries[3].values[0].value下的全部数组元素,再提取每个元素的value字段即可。
正确提取全量水温值的命令
curl "https://waterservices.usgs.gov/nwis/dv/?sites=04092440&format=json&period=P520W" | jq '.value.timeSeries[3].values[0].value[] | .value'
如果需要输出不带双引号的纯数值,可添加-r原始输出参数:
curl "https://waterservices.usgs.gov/nwis/dv/?sites=04092440&format=json&period=P520W" | jq -r '.value.timeSeries[3].values[0].value[] | .value'
内容的提问来源于stack exchange,提问作者Mosrour Tafadar
相关产品推荐
相关产品推荐

