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

技术求助:将指定Curl命令转换为Python代码失败,请求协助

把Curl命令转换成Python Requests代码

没问题,我帮你把这段Curl命令转换成Python的Requests代码,应该能直接用:

首先,我们需要用到Python的requests库,如果还没安装的话,先执行这个命令安装:

pip install requests

然后是转换后的代码:

import requests

# 请求URL
url = "https://192.168.16.220:9000/api/views/search/messages"

# 请求头信息
headers = {
    "X-Requested-By": "superman",
    "Content-Type": "application/json",
    "Accept": "text/csv"
}

# 基本认证信息
auth = ("admin", "admin")

# 请求体数据
payload = {
    "streams": ["62948e1fcd664d57cccfa29c"],
    "query_string": {
        "type": "elasticsearch",
        "query_string": "source"
    },
    "timerange": {
        "type": "relative",
        "range": 30
    }
}

# 发送POST请求,忽略SSL证书验证(对应curl的-k参数)
response = requests.post(
    url,
    headers=headers,
    auth=auth,
    json=payload,
    verify=False
)

# 处理响应,因为Accept是text/csv,所以直接获取文本内容
if response.status_code == 200:
    print("请求成功,返回的CSV内容:")
    print(response.text)
    # 如果需要保存到文件,可以用下面的代码
    # with open("output.csv", "w") as f:
    #     f.write(response.text)
else:
    print(f"请求失败,状态码:{response.status_code}")
    print("错误信息:", response.text)

一些注意事项:

  • verify=False对应curl的-k参数,用来忽略SSL证书验证,生产环境不建议使用,如果有合法的SSL证书,可以去掉这个参数。
  • 确保你的Python环境能访问到目标地址192.168.16.220:9000,如果是内网地址,要保证网络连通性。
  • 如果请求还是失败,可以检查:认证信息是否正确、请求体的参数是否和原curl一致、目标服务是否正常运行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.28 22:47:34