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

Python能否使用requests库通过POST请求爬取接口返回的JSON数据

你可以通过构造和浏览器一致的POST请求直接拿到对应JSON数据,具体实现逻辑如下:

  • 首先从浏览器开发者工具的请求详情页,复制请求头里的User-Agent、Referer、Content-Type三个核心参数,再复制请求体(Payload/Form Data)里的所有请求参数
  • 用requests.post方法传入目标地址、请求头、请求参数发起请求
  • 直接调用响应对象的json()方法即可获得解析为Python字典的接口数据

参考代码如下:

import requests

# 替换为你自己从浏览器抓包得到的请求头
request_headers = {
    "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 13_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36",
    "Referer": "https://www.otpbanka.hr/tecajna-lista",
    "Content-Type": "application/x-www-form-urlencoded"
}

# 替换为你抓包得到的实际请求参数
request_data = {
    # 按你实际抓到的表单参数填写,比如日期、查询类型这类参数
}

response = requests.post(
    url="https://www.otpbanka.hr/otp/ajax/exchange",
    headers=request_headers,
    data=request_data
)

# 校验请求是否成功
if response.status_code == 200:
    json_data = response.json()
    print(json_data)
else:
    print(f"请求失败,状态码:{response.status_code}")

如果请求失败,就对照浏览器的请求头,把所有你抓到的请求头都补充到request_headers里,包括Cookie、Accept等参数,保证请求和浏览器发送的内容完全一致,就能正常获取数据。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 19:15:03