我有一个大的json文件(2.4 GB)。我想在python中解析它。数据如下所示:
[
{
"host": "a.com",
"ip": "1.2.2.3",
"port": 8
},
{
"host": "b.com",
"ip": "2.5.0.4",
"port": 3
},
{
"host": "c.com",
"ip": "9.17.6.7",
"port": 4
}
]
我运行此python脚本parser.py加载要分析的数据::
import json
from pprint import pprint
with open('mydata.json') as f:
data = json.load(f)
以前,我在this中发布了有关相同代码的文章。我正在尝试使用更大的RAM运行代码。但我遇到了另一个错误。您能帮我找出问题的根源吗?
回溯(最近一次通话最后一次):文件“ parser.py”,第6行,在 data = json.load(f)载入中的文件“ /usr/lib/python3.6/json/init.py”,第299行 parse_constant = parse_constant,object_pairs_hook = object_pairs_hook,** kw)文件 加载中的“ /usr/lib/python3.6/json/init.py”,第354行 在解码中返回_default_decoder.decode文件“ /usr/lib/python3.6/json/decoder.py”,行339 obj,end = self.raw_decode(s,idx = _w(s,0).end())文件“ /usr/lib/python3.6/json/decoder.py”,行355,在raw_decode中 obj,end = self.scan_once(s,idx)json.decoder.JSONDecodeError:期待','定界符:第1095583行第749列(char 56649111)
this帖子中存在类似的问题,但是由于我从文件读取json数组,因此无法使用该解决方案。不确定在这种情况下如何应用解决方案?