一日一技:如何正确修复有异常的JSON?
当我们使用大模型生成JSON,或者爬虫抓取数据时,可能会遇到一些有异常的JSON,例如:
- 括号不闭合
1
{"profile": {"name": "xx", "age": 20}
- 没有引号
1
{name: 青南, age: 20, salary: "99999999, }
- 反斜杠异常
1
{"name": "青南", "age": 20, "salary: "\"very big\\""}
Python的json模块解析这些有问题的JSON时就会报错。这个时候,可以使用一个叫做json-repair
的第三方库来解决问题。
使用pip
就可以安装json-repair
。导入以后,就可以像json.loads
一样使用了,
运行效果如下图所示:
对于双引号异常和反斜杠异常,也能正常解析:
字符串型的Python字典,也能正常解析,如下图所示:
使用这个模块,在很大程度上就能避免JSON解析不对的问题了。