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

使用R的rvest抓取Domain网站Market Trends表格数据求助

解决R语言抓取Domain网站Market Trends表格数据的问题

原代码的问题

  • 你使用的CSS选择器div.css-15dn4s是动态生成的类名,这类类名会随网站前端更新而失效,稳定性极差。
  • html_attr("table")用法错误,该div标签不存在table属性,无法提取到有效数据。

正确实现方案

Domain郊区页面的"Market Trends"表格数据通常内嵌在页面的JSON脚本中,我们可以通过定位对应script标签提取数据,步骤如下:

  1. 加载所需R包:
library(rvest)
library(dplyr)
library(jsonlite)
  1. 抓取页面并提取目标数据:
# 目标URL
url <- "https://www.domain.com.au/suburb-profile/drummoyne-nsw-2047"

# 读取页面内容
page <- read_html(url)

# 定位包含Market Trends数据的script标签
market_trends_script <- page %>%
  html_nodes('script[type="application/json"]') %>%
  html_text() %>%
  # 筛选包含Market Trends相关数据的条目
  grep('marketTrends', ., value = TRUE) %>%
  # 取第一个匹配的结果(通常就是目标数据)
  .[1]

# 解析JSON数据
market_trends_data <- fromJSON(market_trends_script)

# 提取表格数据集(根据实际结构调整,示例为年度销量趋势)
trends_table <- market_trends_data$props$pageProps$suburbProfileData$marketTrends$salesByYear
  1. 验证结果:
    运行head(trends_table)即可查看提取到的年份、销量、中位价等表格数据。

注意事项

  • 若网站结构更新,可通过str(market_trends_data)查看完整数据结构,调整提取路径。
  • 频繁抓取可能触发反爬机制,建议添加延迟(如Sys.sleep(2)),并遵守网站robots.txt规则。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 23:22:10