已解决json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

已解决raise JSONDecodeError(“Expecting value”, s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)





文章目录

  • 报错代码
  • 报错翻译
  • 报错原因
  • 解决方法
  • 帮忙解决





报错代码



粉丝群一个小伙伴想用Python读取json报错,但是还是发生了报错(当时他心里瞬间凉了一大截,跑来找我求助,然后顺利帮助他解决了,顺便记录一下希望可以帮助到更多遇到这个bug不会解决的小伙伴),报错代码如下:

已解决json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)_第1张图片



报错信息截图如下所示





报错翻译



报错信息翻译如下

将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问题,以及粉丝群里小伙伴提出的各种问题,文章形式:报错代码 + 报错翻译 + 报错原因 + 解决方法,包括程序安装、运行程序过程中等等问题,订阅专栏+关注博主后如遇到其他问题可私聊帮忙解决!!!

你可能感兴趣的:(《告别Bug》,json,python)