我有一个JSON字符串,如下所示:
b'[{"status_verify":"0","dejatime_firstpaint":"0","fullip":"104.25.229.34","ctl_devlog":"69-131041194","resptime_fullpage":"0","dt_status":"2018-11-25 00:00:21","notified":"0","resptime_connect":"0.08799999952316284","http_resp_length":"0","resptime_firstbyte":"0.6819999814033508","obj_location":"31","max_fullpage_status":"-1","resptime_dns":"0","dejatime_pageload":"0","status":"0","resptime_redirect":"0","capture_exists":"0","resptime_content":"0.08799999952316284","rs_has_dejatime":"0","obj_cust":"117396","obj_device":"470630","childnodes":"0","deja_branched":"0","http_status":"HTTP 200 OK","info_msg":null,"device_descrip":"Get Public Datasets","dejatime_domload":"0","user_experience":"0","location_descrip":"San Francisco, California","dejatime_afttime":"0","resptime":"0.8579999804496765","obj_devlog":"152050515","test_cnt":"0","status_warning":"0"},{"status_verify":"0"
etc, etc, etc.
我试着挑选一些字段,并将它们加载到数据帧中,或者将所有内容加载到数据帧中。问题是,这些都是嵌套的,我不知道如何从这个庞大的字符串中获得实际的字段名
我试过这个:
loaded_json = json.loads(json_data)
for x in loaded_json:
print("%s: %d" % (x, loaded_json[x]))
得到这个结果:TypeError: list indices must be integers or slices, not dict
。我猜这应该是相当直接的,但我不知道如何继续,即使在谷歌搜索了一段时间的解决方案
这是因为你的顶层元素是一个列表,你需要从列表中读取,而不是从
dict
一行加载数据,然后在数据帧中放入一些字段,应该是这样的:
祝你的项目好运
相关问题 更多 >
编程相关推荐