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

Python读取API返回CSV链接生成数据表的问题求助

解决方法

你的错误原因是直接将requests的Response对象传给了pd.read_csv,但这个方法不接受该类型参数。API返回的是包含CSV下载链接的JSON数据,而非直接返回CSV内容,正确流程是先提取CSV链接,再用该链接读取数据。

修正步骤及代码

  1. 调用API后,解析响应的JSON数据,提取其中的CSV URL
  2. 将CSV URL传入pd.read_csv,pandas会自动请求该链接并读取CSV内容
import requests
import pandas as pd

# API配置
api_url = "https://api.squeezely.tech/v1/reporting/events"
request_fields = {
    "from": "2020-01-01", 
    "to": "2026-01-01",
    "custom_fields": "no"
}
auth_headers = {
    "X-AUTH-ACCOUNT": "our account",
    "X-AUTH-APIKEY": "our key",
    "Content-Type": "application/json"
}

# 获取CSV下载链接
api_response = requests.post(api_url, json=request_fields, headers=auth_headers, allow_redirects=False)
response_dict = api_response.json()

# 验证请求成功后读取CSV
if response_dict.get("success"):
    csv_download_url = response_dict["url"]
    # pandas直接读取远程CSV
    df = pd.read_csv(csv_download_url)
    print(df)
else:
    print("API请求未成功,无法获取CSV链接")

额外优化说明

  • 原代码中json=json.dumps(fields)属于冗余操作,requests.post的json参数会自动将字典序列化为JSON格式,无需手动处理
  • allow_redirects是requests.post的请求参数,而非请求头字段,已移至正确位置

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 17:22:43