Итак, задача состоит в следующем: загрузить JSON файл в питоне.
Сам в питоне новичек, поэтому олазил все и вся, даже находил решения, которые помогали кому-то, но со мной все безуспешно...
Сначала пытался просто загружать:
import json
f = open('testset','r')
data = json.load(f)
От чего получал ошибку
Traceback (most recent call last):
File "/Users/--/PycharmProjects/First/main.py", line 7, in <module>
data = json.load(f)
File "/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/json/__init__.py", line 271, in load
return loads(fp.read(),
File "/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/encodings/ascii.py", line 26, in decode
return codecs.ascii_decode(input, self.errors)[0]
UnicodeDecodeError: 'ascii' codec can't decode byte 0xd0 in position 537: ordinal not in range(128)
После изучения вопроса код был немного изменен и получено следующее:
# -*- coding: utf-8 -*-
import json
f = open('testset','r',encoding='utf-8')
data = json.load(f)
Компиляция которого выдавала ошибку
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/json/decoder.py", line 368, in raw_decode
obj, end = self.scan_once(s, idx)
StopIteration
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/Users/--/PycharmProjects/First/main.py", line 6, in <module>
data = json.load(f)
File "/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/json/__init__.py", line 274, in load
parse_constant=parse_constant, object_pairs_hook=object_pairs_hook, **kw)
File "/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/json/__init__.py", line 319, in loads
return _default_decoder.decode(s)
File "/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/json/decoder.py", line 352, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/json/decoder.py", line 370, in raw_decode
raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded
Так же для интереса была получена строка в позициях 527-547:
print (open('testset','rb').read()[527:547])
b'"categs":"\xd0\x94\xd0\xb5\xd0\xba\xd0\xbe\xd1\x80'
Что указывает на проблему с русским языком (насколько я понял из прочитанных материалов), добавив
codecs, получил нормальную строку:
print (codecs.open('testset','rb', "utf-8").read()[527:547])
"categs":"Декоративн
В случае использования подхода с
codecs# -*- coding: utf-8 -*-
import codecs
import json
f = codecs.open('testset','rb', "utf-8")
data = json.load(f)
Получаем ту же ошибку, что и с параметром
encoding= в
openValueError: No JSON object could be decoded
Уже около недели мучаюсь с этим и не могу приступить к следующему этапу работы, потому что тупо не могу открыть файл

Версия Питона - 3.3. Пробовал так же и на 2.7 - там тоже не грузится, но еще и описание ошибок более скудное.