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

如何用Python调用指定API获取数据?返回200但无法提取内容

问题解决

你的代码核心问题是对API返回格式判断错误:你请求的/insult.txt端点返回的是纯文本格式的侮辱语句,并非JSON数据,但你却用res.json()尝试解析,这会触发JSON解析错误,额外嵌套的json.loads()更是完全多余的操作。

修复后的纯文本版本代码

import requests

def get_insult():
    res = requests.get('https://insult.mattbas.org/api/insult.txt')
    if res.status_code == 200:
        # 直接获取纯文本内容
        print(res.text)
    else:
        print(f"请求失败,状态码: {res.status_code}")

get_insult()

可选:使用JSON格式的API端点

该API还提供了返回JSON结构的/insult.json端点,适合需要结构化数据的场景,代码如下:

import requests

def get_insult():
    res = requests.get('https://insult.mattbas.org/api/insult.json')
    if res.status_code == 200:
        insult_data = res.json()
        # 从JSON中提取侮辱语句,对应key为"insult"
        print(insult_data.get('insult'))
    else:
        print(f"请求失败,状态码: {res.status_code}")

get_insult()

内容的提问来源于stack exchange,提问作者Christian Paul Calso

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 07:17:12