- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在尝试使用 ijson 包解析一个大型 (~100MB) json 文件,这使我能够以高效的方式与文件进行交互。然而,在编写了一些这样的代码之后,
with open(filename, 'r') as f:
parser = ijson.parse(f)
for prefix, event, value in parser:
if prefix == "name":
print(value)
我发现代码只解析文件的第一行而不解析文件中的其余行!!
这是我的 json 文件的一部分:
{"name":"accelerator_pedal_position","value":0,"timestamp":1364323939.012000}
{"name":"engine_speed","value":772,"timestamp":1364323939.027000}
{"name":"vehicle_speed","value":0,"timestamp":1364323939.029000}
{"name":"accelerator_pedal_position","value":0,"timestamp":1364323939.035000}
在我看来,我认为ijson
只解析一个json对象。
有人可以建议如何解决这个问题吗?
最佳答案
由于提供的 block 看起来更像是一组行,每行组成一个独立的 JSON,因此应该对其进行相应的解析:
# each JSON is small, there's no need in iterative processing
import json
with open(filename, 'r') as f:
for line in f:
data = json.loads(line)
# data[u'name'], data[u'engine_speed'], data[u'timestamp'] now
# contain correspoding values
关于python - 使用 python ijson 读取包含多个 json 对象的大型 json 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37200302/
我需要一点帮助来解析一个大的 JSON 文件。这里我只有一个数据样本(只有 2 个项目)。 我需要使用解析方法。 open() 不起作用,因为文件太大。 parser=ijson.parse("sam
我想从一个非常大的 json 文件中提取 abstractText。我使用 python 中的 lib ijson,但找不到正确的方法来提取我想要的内容。 json文件的结构是 {'articles'
for prefix, event, value in parser: print(prefix) 执行上述代码后出现以下错误,我不明白错误是什么。 ijson.common.Incomple
关闭。这个问题需要details or clarity .它目前不接受答案。 想改进这个问题吗? 通过 editing this post 添加细节并澄清问题. 关闭 7 年前。 Improve t
我一直在尝试使用 Python 的 ijson 库解析 JSON 文件。这在查看二级元素或使用解析器时有效,但我更喜欢直接查看顶级元素的便利性。 JSON 的基本格式如下: {"foo":{"a":1
我有一个很大的 JSON 文件,如下所示: {"details":{ "1000":[ ["10","Thursday","1","19.89"], ["12"
传入的数据类似于以下内容: [{ "foo": "bar" }] [{ "bar": "baz" }] [{ "baz": "foo" }] 如您所见,对象数组串在一起。 JS
本教程https://www.dataquest.io/blog/python-json-tutorial/他们有一个 600MB 的文件,但是当我运行他们的代码时 import ijson file
我正在尝试解析一个大的 json 文件(数百个演出)以从其 key 中提取信息。为简单起见,请考虑以下示例: import random, string # To create a random ke
我正在处理一个非常大的 JSON 文件,我决定使用 ijson 库。 现在我想更新这个 JSON 文件中的一些值,但我不知道该怎么做。 例如,来自: {"age": 25, "gender": "M"
我正在尝试使用 ijson 而不是 json 以便能够有效地将字典转储到/从字符串(在内存中,而不是从文件中)转储/加载字典[1]. ijson 是否有任何类似于使用 json 进行标准转储/加载的示
我已经安装了python 3.7.0,我的安装目录是AppData\Local\Programs\Python\Python37-32 现在我尝试使用以下方法升级 pip:python -m pip
我正在尝试解析来自 GoogleMaps API 的 JSON 响应,以将嵌套字典中的值读取到 Pandas DataFrame 中。 JSON 响应的结构如下所示。 我正在尝试创建一个名为“addr
我正在尝试使用 ijson 包解析一个大型 (~100MB) json 文件,这使我能够以高效的方式与文件进行交互。然而,在编写了一些这样的代码之后, with open(filename, 'r')
我需要解析一个可能很大的 json 文件。所以我寻找解决方案来帮助我并找到了 ijson 库。似乎非常适合这个目的。 我使用 pypm(我使用 Active Python)、端口和直接使用提供的安装脚
我遇到了几个讨论 ijson 在 python 中加载巨大 JSON 文件的线程,因为这是不消耗所有内存的方法。 我的文件大小约为 1.4 GB,它有多个节点(见下图),我只对一个包含大部分数据的节点
我是一名优秀的程序员,十分优秀!