Как извлечь одно ключевое значение из файла JSON?

#python

Вопрос:

Это мой выходной файл.json:

 {  "ParsedResults": [  {  "TextOverlay": {  "Lines": [],  "HasOverlay": false,  "Message": "Text overlay is not provided as it is not requested"  },  "TextOrientation": "0",  "FileParseExitCode": 1,  "ParsedText": "180 Grade IVrnu0103u021ar: Class VIII Passrnwww.facebook.com, Since 2012rn",  "ErrorMessage": "",  "ErrorDetails": ""  }  ],  "OCRExitCode": 1,  "IsErroredOnProcessing": false,  "ProcessingTimeInMilliseconds": "343",  "SearchablePDFURL": "Searchable PDF not generated as it was not requested." }  

Я пытаюсь получить ParsedText значение из этого файла JSON.

Это мой код, который я использую:

 import json   f = open('output.json',) data = json.load(f) print(data['ParsedResults']['TextOverlay']['ParsedText']) f.close()  

Столкнувшись с этой ошибкой:

 TypeError: list indices must be integers or slices, not str  

Как узнать это конкретное значение ParsedText , пожалуйста, объясните. заранее спасибо

Ответ №1:

ParsedResults-это не объект, это список

попробуйте это:

 import json  f = open('output.json',) data = json.load(f) print(data['ParsedResults'][0]['ParsedText']) f.close()  

Ответ №2:

данные[‘ParsedResults’] — это список, для анализа вам нужно использовать индекс, поэтому вы получаете ошибку типа: индексы списка должны быть целыми числами или срезами, а не str

используйте данные[‘Результаты анализа’] [0].

используйте следующее,

 import json f = open('output.json',) data = json.load(f) print(data['ParsedResults'][0]['TextOverlay']['ParsedText']) f.close()