已解决raise JSONDecodeError(“Expecting value”, s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
文章目录
- 报错代码
- 报错翻译
- 报错原因
- 解决方法
- 帮忙解决
报错代码
粉丝群一个小伙伴想用Python读取json报错,但是还是发生了报错(当时他心里瞬间凉了一大截,跑来找我求助,然后顺利帮助他解决了,顺便记录一下希望可以帮助到更多遇到这个bug不会解决的小伙伴),报错代码如下:
报错信息截图如下所示:
报错翻译
报错信息翻译如下:
将JSON解码错误(“预期值”,s,错误值)从None引发
json解码器。JSON解码错误:应为值:第1行第1列(字符0)
报错原因
报错原因:
json.load()载入json文件时出现了错误,问题一般是由于json文件损坏或内容缺失,报错的意思是,你获取的数据json数据不是字典形式。
解决方法
(1)如果是爬虫报错的话,检查爬虫是否拿到字典形式json数据,才能通过json.loads 解析成python的字典形式
(2)如果是读取json文件出现这个错误:
-
解决方法1:注意是否需要改为 encoding=‘gbk’
with open('xxx.json','r', encoding='utf-8') as f: #若文件不为空但json_file读出来为空,注意编码格式是否匹配 json_file = json.load(f)
-
解决方法2::
with open('xxx.json','r', encoding='utf-8') as f: json_file = json.loads(f.read())
帮忙解决
本文已收录于:《告别Bug》专栏
本专栏用于记录学习和工作中遇到的各种疑难Bug问题,以及粉丝群里小伙伴提出的各种问题,文章形式:报错代码 + 报错翻译 + 报错原因 + 解决方法,包括程序安装、运行程序过程中等等问题,订阅专栏+关注博主后如遇到其他问题可私聊帮忙解决!!!