YouTube APIからのJSON応答データを解析しようとしていますが、エラーが発生し続けます。
これが窒息するスニペットです:
data = json.loads("""{ "entry":{ "etag":"W/\"A0UGRK47eCp7I9B9WiRrYU0.\"" } }""")
..そしてこれが起こる:
JSONDecodeError: Expecting , delimiter: line 1 column 23 (char 23)
それが有効なjsonであり、フォーマットを制御できないことを確認しました。どうすればこのエラーを回避できますか?
"" "の前にr
が必要か、すべての_\
_を_\\
_で置き換えます。これは、jsonを他の場所から読み取るときに気にする必要はありませんが、文字列自体。
data = json.loads(r"""{ "entry":{ "etag":"W/\"A0UGRK47eCp7I9B9WiRrYU0.\"" } }""")
詳細については こちら を参照してください
Json文字列の前にr
を追加する必要があります。
>>> st = r'{ "entry":{ "etag":"W/\"A0UGRK47eCp7I9B9WiRrYU0.\"" } }'
>>> data = json.loads(st)
>>>