Действительный JSON, дающий JSONDecodeError: Ожидание, разделитель

Я пытаюсь проанализировать данные ответа json от youtube api, но я продолжаю получать ошибку.

Вот фрагмент, где он задыхается:

data = json.loads("""{ "entry":{ "etag":"W/\"A0UGRK47eCp7I9B9WiRrYU0.\"" } }""")

.. и это происходит:

JSONDecodeError: Expecting , delimiter: line 1 column 23 (char 23)

Я подтвердил, что это действительно json, и у меня нет контроля над его форматированием, так как я могу пройти мимо этой ошибки?

Ответ 1

Вам понадобится r перед "" "или замените все \ на \\. Это не то, о чем вам следует заботиться, когда читаете json из другого места, но что-то в самой строке.

data = json.loads(r"""{ "entry":{ "etag":"W/\"A0UGRK47eCp7I9B9WiRrYU0.\"" } }""")

см. здесь для получения дополнительной информации

Ответ 2

Вам нужно добавить r перед вашей json-строкой.

>>> st = r'{ "entry":{ "etag":"W/\"A0UGRK47eCp7I9B9WiRrYU0.\"" } }'
>>> data = json.loads(st)
>>>