Notez que j'ai vérifié comment analyser la chaîne JSON écrite dans le fichier avec Python.
json.load ()
)Pour un tel fichier
data.json
{
"data":{
"a": "Bonjour",
"b": 123
},
"c": true
}
L'analyse JSON peut être effectuée en utilisant ** json.load ()
** pour les données acquises par ʻopen () `.
import json
raw = open('data.json', 'r')
type(raw)
# <class '_io.TextIOWrapper'>
parsed = json.load(raw)
type(parsed)
# <class 'dict'>
parsed
# {'data': {'a': 'Bonjour', 'b': 123}, 'c': True}
print(json.dumps(parsed, ensure_ascii=False, indent=4))
#{
# "data":{
# "a": "Bonjour",
# "b": 123
# },
# "c": true
#}
json.loads
)-- json.loads
ne peut pas analyser les données de type TextIOWrapper.
json.loads(raw)
# Traceback (most recent call last):
# File "<stdin>", line 1, in <module>
# File "/usr/lib64/python3.6/json/__init__.py", line 348, in loads
# 'not {!r}'.format(s.__class__.__name__))
# TypeError: the JSON object must be str, bytes or bytearray, not 'TextIOWrapper'
c'est tout
Recommended Posts