有一种方法可以使用Python美化有效的JSON:如何在(unix)shell脚本中美化打印JSON?
然而,即使有错误,jsonlint.com也会美化打印JSON。
我想要做到这一点,并且我正在使用Python。有人知道一个能够实现此功能的脚本吗?
谢谢:)
有一种方法可以使用Python美化有效的JSON:如何在(unix)shell脚本中美化打印JSON?
然而,即使有错误,jsonlint.com也会美化打印JSON。
我想要做到这一点,并且我正在使用Python。有人知道一个能够实现此功能的脚本吗?
谢谢:)
@kelw已经指出了demjson
,它适用于稍微无效的JSON。对于更不符合JSON规范的数据,我编写了barely_json
:
from barely_json import parse
from pprint import pprint
invalid_json = '[no, , {complete: yes}]'
data = parse(invalid_json)
pprint(data)
尝试使用 jsbeautifier 库来美化 JavaScript。它能够工作是因为 JSON 几乎是 JavaScript 的子集。
import json
import jsbeautifier
invalid_json = '{"hello": "world",}'
json.loads(invalid_json)
# ValueError: Expecting property name: line 4 column 1 (char 25)
jsbeautifier.beautify(invalid_json)
# '{\n "hello": "world",\n}'
使用Python有一种内置的方法可以实现:
python -m json.tool myfile.json