给出JSONDecodeError的有效JSON:应为,delimi

2024-05-19 18:18:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试图解析来自youtube api的json响应数据,但我一直收到一个错误。

以下是它令人窒息的片段:

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

…然后发生了:

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

我已经确认它是有效的json,并且我无法控制它的格式,所以我如何才能克服这个错误?


Tags: 数据apijsondatayoutube错误lineetag
2条回答

您需要在json字符串之前添加r

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

在“”之前需要一个r,或者用\\替换所有\。当从其他地方读取json时,这不是您应该关心的问题,而是字符串本身的问题。

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

有关详细信息,请参见here

相关问题 更多 >