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

Python无法抓取网页XHR元素问题求助

提取目标XHR接口的JSON数据

步骤1:确认XHR请求的完整信息

打开浏览器开发者工具(F12),切换到Network标签页,刷新目标页面后找到名称以Consultazione?开头的XHR请求,记录以下关键信息:

  • 完整请求URL(包含所有查询参数)
  • 请求方法(GET/POST)
  • 请求头(重点保留User-Agent、Referer、Cookie,部分网站可能需要Authorization等其他字段)
  • 若为POST请求,需记录请求体(Form Data或JSON格式)

步骤2:用Python请求接口获取JSON

使用requests库发送请求,以下是通用示例(根据抓包结果调整参数):

import requests

# 替换为抓包得到的完整请求URL
target_url = "https://certificatoricreditors.mimit.gov.it/Consultazione?[你的查询参数]"

# 替换为抓包得到的请求头
request_headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36",
    "Referer": "https://certificatoricreditors.mimit.gov.it/Consultazione",
    "Cookie": "[抓包获取的Cookie内容]"
}

# 根据请求方法选择对应逻辑
resp = requests.get(target_url, headers=request_headers)
# 若为POST请求,替换为以下代码(根据请求体格式调整)
# post_data = {}  # 替换为抓包得到的请求体数据
# resp = requests.post(target_url, headers=request_headers, json=post_data)

# 处理响应
if resp.status_code == 200:
    try:
        result_json = resp.json()
        print("获取到的JSON数据:")
        print(result_json)
        # 可选:保存到本地文件
        # import json
        # with open("consultazione_data.json", "w", encoding="utf-8") as f:
        #     json.dump(result_json, f, ensure_ascii=False, indent=4)
    except ValueError:
        print("响应不是有效的JSON格式")
else:
    print(f"请求失败,状态码:{resp.status_code},响应内容:{resp.text}")

注意事项

  • Cookie可能会过期,若出现403/401等状态码,需重新抓包获取最新Cookie
  • 若网站有反爬机制,可尝试添加Accept、Accept-Language等请求头字段,或使用requests.Session()保持会话
  • 若请求参数包含动态生成的字段(如timestamp、signature),需分析页面JS逻辑生成对应参数

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.23 20:04:57