[英]Parse file containing JSON objects into database using python
我有一个文件,在每一行中都包含一个JSON对象,这意味着整个文件不是有效的JSON,而仅每一行本身就是。
我想做的是遍历文件,将每一行转换为JSON,然后打印值,这很简单,因为只有每一行本身就是有效的JSON。
该文件如下所示:
{json object 1}
{json object 2}
{json object 3}
{json object 4}
每个JSON对象如下所示:
{"event":"Session","properties":{"time":1423353612,"duration":33}}
我尝试运行失败的代码如下:
import simplejson as json
with open("sessions.json", "r") as f:
for line in f:
j=json.JSONEncoder().encode(line)
print j['event']['time']
print j['event']['duration']
我收到以下错误:
TypeError: string indices must be integers, not str
有什么想法吗?
谢谢!
您打错了电话。 从JSON字符串为Python对象转换为代编码,不编码。 无论如何,最好使用json
模块中的顶级函数,而不是基础类本身。
for line in f:
j = json.loads(line)
编辑
给定您显示的结构, j['event']
是字符串“ Session”,它没有子属性time
。 看起来您的意思是j['properties']['time']
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.