python - 使用 Python 解析 JSON 时出现异常
问题描述
我正在为此苦苦挣扎,但我不知道是哪个问题。我也尝试过使用.encode('unicode_escape')
它作为原始字符串,但仍然无法正常工作。
json.loads('{"src":"https://media1.giphy.com/media/deDsaGovR3BMiNh45V/giphy.gif?cid=da5535431178774e95701d0ab60d607f894576a24782a98d&rid=giphy.gif","extraInfo":"{"digsrc":"giphy","digsrc_url":"https://giphy.com/gifs/disenchantment-animation-netflix-deDsaGovR3BMiNh45V"}"}')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Users\neiu\AppData\Local\Programs\Python\Python36-32\lib\json\__init__.py", line 354, in loads
return _default_decoder.decode(s)
File "C:\Users\neiu\AppData\Local\Programs\Python\Python36-32\lib\json\decoder.py", line 339, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "C:\Users\neiu\AppData\Local\Programs\Python\Python36-32\lib\json\decoder.py", line 355, in raw_decode
obj, end = self.scan_once(s, idx)
json.decoder.JSONDecodeError: Expecting ',' delimiter: line 1 column 152 (char 151)```
解决方案
JSON 格式不正确,您有"extraInfo":"{"
. 这不是有效的 JSON。最后你还有}"}
另一个格式错误。正确的字符串是:
json.loads('{"src":"https://media1.giphy.com/media/deDsaGovR3BMiNh45V/giphy.gif?cid=da5535431178774e95701d0ab60d607f894576a24782a98d&rid=giphy.gif","extraInfo":{"digsrc":"giphy","digsrc_url":"https://giphy.com/gifs/disenchantment-animation-netflix-deDsaGovR3BMiNh45V"}}')
在以下位置进行测试:https ://jsonlint.com/