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

Python脚本无法将接口返回字典写入文件,无报错但数据未保存求助

故障排查与解决步骤
  • 优先排查GET请求参数错误问题:当前你给GET请求传递了data参数,GET请求的请求体通常不会被后端接口识别,身份校验失败会返回空响应。你需要将GET请求的data=user_passwd改为params=user_passwd,同时先打印请求状态码和返回内容确认接口有有效返回,修正后的参考代码如下:
import os
import json
import requests
# 关闭ssl告警(可选)
requests.packages.urllib3.disable_warnings()

s=requests.Session()
# 先确认登录请求成功
login_resp = s.post("https://tp-dc-ixm0.net/api/login", verify=False, data=user_passwd)
print("登录请求状态码:", login_resp.status_code)

# 调整GET请求参数传递方式,避免URL拼接和参数冲突
get_params = {
    "status": "all",
    "topology": "NodeToNode",
    "limit": 100
}
# 合并身份校验参数
get_params.update(user_passwd)
get_resp = s.get("https://tp-dc-ixm0.net/api/tests", verify=False, params=get_params)
print("数据请求状态码:", get_resp.status_code)
print("接口返回原始内容:", get_resp.text)

response1 = json.loads(get_resp.text)
print("解析后数据类型:", type(response1))
print("解析后数据内容:", response1)

# 确认文件写入路径,避免相对路径定位错误
print("当前脚本工作目录:", os.getcwd())
# 指定编码避免中文乱码,添加格式化参数方便阅读
with open('data.txt', 'w', encoding='utf-8') as output:
    json.dump(response1, output, ensure_ascii=False, indent=2, default=str)
  • 排查路径错误:如果打印的工作目录和你预期的存放文件的目录不一致,直接写绝对路径即可,比如Windows下open(r'C:\Users\你的用户名\Desktop\data.txt', 'w', encoding='utf-8'),Linux/macOS下open('/home/你的用户名/data.txt', 'w', encoding='utf-8')。
  • 排查权限问题:如果脚本运行身份对目标目录没有写入权限,会静默写入失败,可切换到用户目录、桌面等路径做测试。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.22 05:15:03