2016-05-03 4 views
0

Я преобразование строки JSON в объект словаря Python и я получаю следующее сообщение об ошибке для кода ниже:Ошибки преобразования строки в объекте словаря

import json 

    path = 'data2012-03-16.txt' 

    records = [json.loads(line) for line in open(path)] 

Ошибка:

UnicodeDecodeError: «utf8» кодека не может декодировать байт 0x92 в позиции 6: недопустимый начало байта

+0

Можете ли вы также указать содержимое файла? –

+0

Его текстовый файл, первая строка json-файла: '{"a": "Mozilla \\/5.0 (Windows NT 6.1; WOW64) AppleWebKit \\/535.11 (KHTML, как и Gecko) Chrome \\/17.0 .963.78 Safari \\/535.11 "," c ":" US "," nk ": 1," tz ":" America \\/New_York "," gr ":" MA "," g ":" A6qOVH " , "h": "wfLQtf", "l": "orofrog", "al": "en-US, en; q = 0.8", "hh": "1.usa.gov", "r": " http: \\/\\/www.facebook.com \\/l \\/7AQEFzjSi \\/1.usa.gov \\/wfLQtf "," u ":" http: \\/\\/www. ncbi.nlm.nih.gov \\/pubmed \\/22415991 "," t ": 1331923247," hc ": 1331822918," cy ":" Danvers "," ll ": [42.576698, -70.954903]} \ r \ п» – user3447653

ответ

0

несколько suggestion-

  1. Возможно, кодировка файла недействительна? попробуйте открыть его в блокноте ++ и изменить кодировку.

  2. Вы уверены, что ваш json-файл хорошо отформатирован? попробуйте открыть его в json parser и проверьте его.

  3. Почему у вас возникла ошибка с байтом 0x92 в позиции 6, что находится в этом индексе вашего файла? возможно, у вас есть проблема со всеми \/проблемами, попробуйте заменить его другими буквами и проверьте, работает ли он. кроме того, вы можете использовать способ исключения и попытаться открыть другой файл с тем же кодом. После этой работы открывайте тонкую версию этого файла и т. д.

Смежные вопросы