You need to enable JavaScript to run this app. 如何将指定CURL POST请求转换为可正常执行的Python requests代码
优惠活动
大模型
产品
解决方案
定价
更多

如何将指定CURL POST请求转换为可正常执行的Python requests代码

问题排查与修正方案

你的代码存在3个核心错误,调整后即可正常运行:

  • 错误覆盖了requests库对象:代码第一行requests = "curl -v --location"将需要导入的requests网络请求库替换成了普通字符串,导致后续调用requests.post方法直接报错
  • 请求参数类型错误:curl的--data-raw对应POST请求的body载荷,你使用的params参数是用来拼接URL后缀的查询参数,和需求完全不匹配
  • 缺少requests库导入步骤,代码无法找到依赖库

修正后的可运行代码

# 先导入requests库,不要自定义重命名requests变量
import requests

url = "http://127.0.0.1:8080/abc"
# 替换为你实际的JSON字典数据,比如{"key":"value"}
payload = {"your": "data"}
headers = {'Content-Type': 'application/json'}

# 对应curl的--location参数显式开启重定向,requests.post默认也开启该配置
# 对应--data-raw传JSON载荷用json参数,requests会自动序列化字典为JSON字符串
r = requests.post(url=url, headers=headers, json=payload, allow_redirects=True)

# 对应curl的-v参数,打印调试信息
print("响应状态码:", r.status_code)
print("响应头:", r.headers)
print("响应内容:", r.text)

额外说明

如果你要直接传已经序列化好的JSON字符串,把json=payload改成data=payload即可,不需要修改其他配置。

内容的提问来源于stack exchange,提问作者Ashwini kumar jha

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.17 14:15:05