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

Python解析加密货币API JSON数据异常,请求技术支持

解决Python解析Cryptocompare加密货币行情JSON的问题

我来帮你排查下问题——状态码200说明请求本身是成功的,IDLE自动退出大概率是脚本执行完就直接结束了,而JSON解析错误则可能是你没正确处理响应内容。下面给你一套完整的解决方案:

第一步:用更简洁的库处理请求

推荐使用requests库来处理HTTP请求,它比Python自带的urllib更易用。如果还没安装,先在终端/命令行执行:

pip install requests

第二步:完整的解析代码示例

import requests

# 你的API地址是正确的,直接复用
api_url = "https://min-api.cryptocompare.com/data/price?fsym=XMR&tsyms=USD"

try:
    # 发送GET请求获取数据
    response = requests.get(api_url)
    # 主动校验请求状态,非200时抛出异常
    response.raise_for_status()
    
    # 直接用requests自带的json()方法解析响应,不用手动处理字符串
    price_data = response.json()
    
    # 格式化输出解析结果,按需调整展示方式
    print("当前门罗币(XMR)的美元价格:")
    print(f"XMR → USD: ${price_data['USD']:.2f}")
    
    # 针对IDLE自动退出的问题:加这行让程序等待用户输入后再结束
    input("\n按回车键关闭窗口...")

except requests.exceptions.RequestException as e:
    print(f"请求过程出错:{e}")
except KeyError as e:
    print(f"JSON解析失败,找不到目标键:{e}")

常见错误点排查

  • 如果你之前用urllib,可能犯了「直接对响应对象解析」的错误,正确做法是先读取response.read()的内容再用json.loads()解析,而requests的json()方法已经帮你做了这一步
  • 没加异常捕获:如果API返回的JSON结构和预期不符(比如临时返回错误信息),会直接导致程序崩溃退出,加上try-except能帮你定位具体问题
  • IDLE自动退出:脚本执行完就会默认关闭窗口,加input()等待用户操作,就能保持窗口打开查看结果

运行效果

把代码复制到IDLE中运行,你会看到类似这样的输出:

当前门罗币(XMR)的美元价格:
XMR → USD: $148.67

按回车键关闭窗口...

内容的提问来源于stack exchange,提问作者Benjamin Jones

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 07:53:31