簡體   English   中英

使用Python打印無效的JSON

[英]Pretty printing invalid JSON with Python

有一種方法可以用Python漂亮地打印有效的JSON: 我如何在(unix)shell腳本中打印JSON?

然而,即使出現問題,jsonlint.com還可以打印JSON。

我想這樣做,我正在使用Python。 有誰知道這樣做的腳本?

謝謝 :)

您可以在自己的腳本中使用demjson模塊,也可以使用jsonlint.py工具

@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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM