@2ksen

Как подгрузить файл JSON в python?

Не удается подгрузить файл json формата [{},{},{},..{}}
with open('test.json') as f:
    data = json.load(f)


Выскакивает ошибка
UnicodeDecodeError: 'charmap' codec can't decode byte 0x98 in position 50218: character maps to
  • Вопрос задан
  • 208 просмотров
Решения вопроса 2
trapwalker
@trapwalker Куратор тега Python
Программист, энтузиаст
Есть ещё один способ загружать неформатные файлы, похожие на json.
Дело в том, что любой json файл представляет собой валидный yaml-файл.
Но yaml гораздо боле гибкий формат, который "проглатывает" и ключи без кавычек, и трейлинговые запятые.
Можно много спорить по поводу безопасности и корректности использования yaml для парсинга невалидных json, но иногда просто нет выхода и нужно обрабатывать огромное количество таких уже имеющихся файлов.
import yaml
with open('test.json', encoding='utf-8') as f:
    data = yaml.load(f, yaml.CSafeLoader)
Ответ написан
Комментировать
JustKappaMan
@JustKappaMan
Frontend, backend, desktop. Всего понемногу.
Попробуй указать опциональный атрибут encoding в open()
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы