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

使用requests.get爬取网页时数据与页面显示不一致的问题求助

解决API返回数据与网页显示不一致的问题

问题原因

你直接通过索引test["items"][8]取值,可能拿到的是实用面积(Užitná plocha),而网页显示的是总面积(Celková plocha),两者属于不同数据字段,因此数值存在差异。另外,API返回的items列表顺序可能随网站更新发生变化,硬编码索引会导致取值不稳定。

解决方案

  1. 先遍历API返回的所有items,查看每个字段的标签和对应值,定位到网页显示的面积字段:
import requests

response = requests.get("https://www.sreality.cz/api/cs/v2/estates/3574729052?tms=1676140494143").json()
for item in response["items"]:
    print(f"标签: {item['name']}, 值: {item['value']}")
  1. 运行代码后,你会看到包含各类房产参数的输出,从中找到标注为Celková plocha(总面积)的条目,其数值就是网页显示的54平方米。
  2. 后续通过字段名称而非索引取值,避免因列表顺序变化导致错误:
# 遍历匹配总面积字段
total_area = next(item["value"] for item in response["items"] if item["name"] == "Celková plocha")
print(total_area)

补充说明

这类房产网站通常会区分实用面积和总面积,网页前端一般优先展示用户更关注的总面积,而API会返回多个面积相关字段。直接依赖索引取值不可靠,通过字段名称匹配才是稳定的爬取方案。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 12:40:35