文章目录

  • 尝试解析空字符串会导致错误
  • 错误的常见原因
  • 尝试解析无效的 JSON 值
  • 忘记用引号括起属性或字符串值
  • 对属性或值使用单引号而不是双引号
  • 确保你没有尾随逗号
  • 发出 HTTP 请求时得到空响应
  • 确保 API 不会以不正确的 Content-Type 响应
  • 尝试读取一个空的 JSON 文件或错误地读取一个 JSON 文件
  • 使用 try/except 语句来处理潜在的错误
  • 确保不将文件路径传递给 json.loads()
  • 使用 json.loads() 手动调用 read() 方法
  • 在使用 json.loads() 之前尝试让你的 JSON 有效
  • 通常导致错误的事情
  • 总结

Python“json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0) ”发生在我们试图解析一些无效的 JSON 时。

要解决该错误,请确保响应或文件不为空,或者在解析之前有条件地检查内容类型。


尝试解析空字符串会导致错误

这是一个非常简单的示例,说明错误是如何发生的。

import json# ⛔️ json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
result = json.loads('')

我们试图将一个空字符串当作有效的 JSON 来解析。


错误的常见原因

最常见的错误原因是:

  • 尝试解析无效的 JSON 值(例如单引号或尾随逗号)。
  • 从远程服务器(例如 204 或 404)获取空响应并尝试将其作为 JSON 进行解析。
  • 尝试像解析 JSON 一样解析具有不同内容类型(例如文本/html)的响应。
  • 尝试错误地读取 JSON 文件或尝试解析空 JSON 文件的内容。

尝试解析无效的 JSON 值

下面是一个存储无效 JSON 的文件示例。

example.json

{"id": 1,'name': "Alice","age": 30,"country": "Austria"
}

请注意 ,名称属性用单引号引起来。

这会使 JSON 无效,并且尝试从文件中读取会导致错误。

import jsonfile_name = 'example.json'# ⛔️ json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes: line 3 column 3 (char 15)
with open(file_name, 'r', encoding='utf-8') as f:my_data = json.load(f)print(my_data)

要解决该错误,需要确保将 JSON 中的所有键和字符串值用双引号引起来。

example.json

{"id": 1,"name": "Alice","age": 30,"country": "Austria"
}

现在 name 键用双引号括起来,我们可以安全地从文件中读取。

# ✅ works as expected
import jsonfile_name = 'example.json'with open(file_name, 'r', encoding='utf-8') as f:my_data = json.load(f)# 												

Python 中JSONDecodeError: Expecting value: line 1 column 1 (char 0)错误相关推荐

  1. 【debug】json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

    摘要 环境: 编程语言:Python 3.7 操作系统:Win 10 json数据对象:https://kyfw.12306.cn/otn/leftTicket/query?leftTicketDTO ...

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

    json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0) 问题解决 参考文章: (1)json.decoder.J ...

  3. json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

    可以参考一波:https://stackoverflow.com/questions/16573332/jsondecodeerror-expecting-value-line-1-column-1- ...

  4. json.decoder.JSONDecodeError: Expecting ‘,‘ delimiter: line xx column xx (char xxx)

    将python json字符串转为json的时候出现了:json.decoder.JSONDecodeError: Expecting ',' delimiter: line 12 column 55 ...

  5. 解决json解析报错:Expecting value: line 1 column 1 (char 0)

    一般来说,出现这种Expecting value: line 1 column 1 (char 0)报错,一般原因都是返回的数据的格式不是json格式的. 今天在用flask写一个接口,测试接口的时候 ...

  6. json.decoder.JSONDecodeError: Expecting value: line 28 column 5 (char 731)

    傻屌问题,看看是不是json.load读的文件是不是多了哪个符号. 比如这里最后面多了个逗号就报错............

  7. python中json.loads报错: Expecting ‘,‘ delimiter: line 1 column 3545 (char 3544)

    在python中使用json.loads报错: Expecting ',' delimiter: line 1 column 3545 (char 3544) 原因: json字符串为: jsonSt ...

  8. json.loads解码字符串时出错:JSONDecodeError: Invalid \escape: line 1 column 2687 (char 2686)

    一.问题描述 在使用爬虫爬取数据时使用json.loads()解码JSON数据时遇到如下错误: 1 致错语句: json_data = json.loads(str(star_infos).repla ...

  9. json.decoder.JSONDecodeError: Invalid \escape: line 1 column 44 (char 43)

    import jsondict_str = '{ "content": ""\u003Cblockquote class=\"pgc-blockquo ...

最新文章

  1. linux自动下载ftp文件夹,Linux 下FTP定时执行批量下载文件
  2. [ASP.NET MVC] 利用动态注入HTML的方式来设计复杂页面
  3. Prn.txt Con.txt(文件命名的问题)
  4. 安装和卸载mysql
  5. 基于余弦相似性的指纹匹配算法在WIFI室内定位上的应用(转)
  6. 利用 SQL Monitor 查看语句运行状态步骤
  7. 深入浅出之WPF基础教程
  8. stm32f107rc使用系统时钟延时不准
  9. 模糊c-均值聚类算法(FCM)
  10. vue中对鼠标划过事件处理方式
  11. 人工智能论文-人工智能技术在新冠病毒肺炎疫情防控中的应用
  12. QT QDataEdit
  13. 【读书笔记】吴军阅读与写作讲义
  14. 论文研读-多目标优化中的多源选择迁移框架
  15. 数电三:编码器和译码器
  16. docker 雷电模拟器
  17. xe-utils 计算:年份、月份、周、天、每月天数、月的第几周、年的第几天、年的第几周、日期倒计时、日期至今差距计算、任意日期格式化
  18. BGPv4-原理介绍+报文分析+配置示例
  19. Python课堂练习3
  20. 可以办理软件著作权的部门有哪些

热门文章

  1. 【KCF算法解析】High-Speed Tracking with Kernelized Correlation Filters笔记
  2. Android系统连接WIFI显示网络连接受限
  3. java IO笔记(StringReader/StringWriter)
  4. 1016: 构建矩阵
  5. Tensorflow.whl文件安装经验
  6. echarts 图例属性设置
  7. 吸顶灯怎么固定天花板_天花板吸顶灯如何进行安装? 安装中的注意事项有哪些?...
  8. 3岁开始学写字的孩子,为什么不如3岁开始学读经的孩子??
  9. 2018 ACMUG全球年会盛典在京圆满落幕,开启数据库创新变革之新征程
  10. 趣多多儿童玩具租赁网