【发布时间】:2018-02-01 17:36:17
【问题描述】:
下面是我从在线气象站提取的 json 结构。我还包括一个 json_to_csv python 脚本,它应该将 json 数据转换为 csv 输出,但只返回一个“Key”错误。我想从“current_observation”中提取数据:仅。
{
"response": {
"features": {
"conditions": 1
}
}
, "current_observation": {
"display_location": {
"latitude":"40.466442",
"longitude":"-85.362709",
"elevation":"280.4"
},
"observation_time_rfc822":"Fri, 26 Jan 2018 09:40:16 -0500",
"local_time_rfc822":"Sun, 28 Jan 2018 11:22:47 -0500",
"local_epoch":"1517156567",
"local_tz_short":"EST",
"weather":"Clear",
"temperature_string":"44.6 F (7.0 C)",
}
}
import csv, json, sys
inputFile = open("pywu.cache.json", 'r') #open json file
outputFile = open("CurrentObs.csv", 'w') #load csv file
data = json.load(inputFile) #load json content
inputFile.close() #close the input file
output = csv.writer(outputFile) #create a csv.write
output.writerow(data[0].keys())
for row in data:
output = csv.writer(outputFile) #create a csv.write
output.writerow(data[0].keys())
for row in data:
output.writerow(row.values()) #values row
检索温度字符串并转换为 .csv 格式的最佳方法是什么?谢谢!
【问题讨论】:
-
您的代码没有正确缩进;请修复它,以便我们可以运行它。
-
所以你想要的输出是一个 CSV 文件,其中只有一列的行,每行只显示 temperature_string?
-
如果可能的话,我想要本地时间、天气和温度字符串。
标签: python export-to-csv