You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中如何处理空JSON响应并避免代码执行中断?

实现逻辑与代码示例

你需要覆盖「HTTP请求异常」「空响应/非JSON格式响应」「返回内容无Data字段」「Data字段为空」四类可能导致程序崩溃的场景,完整实现代码如下:

import requests

getsomething = requests.get("https://url of api")

try:
    # 校验HTTP请求是否成功,拦截4xx、5xx类错误
    getsomething.raise_for_status()
    # 解析JSON响应,空响应会触发JSON解析异常,直接进入异常分支
    res_data = getsomething.json()
    # 用get方法读取字段,避免无Data字段时报错,同时判断字段是否非空
    if res_data.get("Data"):
        print(res_data["Data"])
    else:
        print("Nothing Found In the api Request")
# 统一捕获所有请求、解析相关的异常做兜底
except requests.exceptions.RequestException:
    print("Nothing Found In the api Request")

逻辑说明

  • response.raise_for_status()会自动判断HTTP响应状态码,遇到请求失败的情况直接抛出异常,不需要手动判断status_code
  • 用字典的get()方法读取Data字段,字段不存在时会默认返回None,不会触发KeyError
  • 外层异常捕获覆盖了网络错误、空响应JSON解析失败、请求超时等所有极端情况,不会导致程序直接终止

内容的提问来源于stack exchange,提问作者Mr Dream

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 07:36:04