#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()