繁体   English   中英

使用python将包含JSON对象的文件解析到数据库中

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM