我正在尝试解析巨大的JSON文件(大约20GB)。 尝试一次读取一行(每行是一个JSON对象)并提取所需的详细信息。
示例:
JSON文件数据如下所示
{
{a: [], b: [], c: [], d: [],e: []},
{a: [], b: [], c: [], d: [],e: []},
.....,
{a: [], b: [], c: [], d: [],e: []},
}
要解析的片段:
count = 0;
with open(fileName) as fp:
try:
for line in fp:
data_local = json.loads(line)
count = count + 1
#access the data_local["a"]
except:
print "Error found" , count , len(data_local["a"])
错误消息(未使用“除块外”):
Traceback (most recent call last):
File "./xyzFile", line 606, in <module>
for line in fp:
SystemError: Negative size passed to PyString_FromStringAndSize
输出(当使用“除”块“之外)
Error found 65 5392287
在堆栈溢出时发现something similar ,但这没有帮助。试图通过捕获异常来调试。它在读取第65个JSON对象(行)后抛出错误。每个JSON对象都是巨大的(大小而没有值)
任何领导都会受到赞赏。
由于