Python仅反序列化顶层json数据

时间:2019-01-13 03:37:19

标签: python arrays json

我有很多可以处理的大型json文件。 不幸的是,并非所有的json数据都具有良好的结构。

简而言之,数据的形状类似于

  

[ { A1:va1, B:[ {B1:vb1, ...}, {B2...}, {...} ] }, { A2 ....}, {....} ]

A对象组成的数组,其中除其他外,还包含一个非一对多B对象的内部数组。

不幸的是,给定的B对象在随机情况下会发生结构违规。

我想做的是在A级别上进行迭代,但将B对象视为单个字符串,而不是被json.loads()解析-或-导致json.loads( )将B的每个实例都视为一个字符串,因此我可以记录B字符串以进行第一手检查。

正如我所说,上面的数据形状只是一个概括。在真实数据中,A顶层还有很多不确定的地方,因为我认为我无法成功地定义模式并将其有效地应用于该数据。至少在最高A级别上没有任何结构性违规。

1 个答案:

答案 0 :(得分:0)

问题是我可以确定程度地检查数据。 在15分钟内,使用此方法我得到了答案。不是我想要的答案,但至少我现在知道我要处理的问题。

我用JSON Formatter加载项将一个文件加载到Notepad ++中。 对其进行格式化,然后将其放入Excel工作表中。添加了一些带有方程式的列以指出感兴趣的行,几个Ctrl-F全部查找并排序。

现在我最坏的情况就在我眼前。但是至少我现在知道。