首页 > 解决方案 > R:不包含在 HTML 中的 Webscraping 数据

问题描述

我正在尝试从这些网页中抓取 R 中的网页内容。但是 html 只有 50 行,所以我假设这些数字隐藏在 javascript 文件或他们的服务器上。我不知道如何找到我想要的数字(例如,学生人数下的注册人数)。

当我尝试使用 rvest 时,如

num <- school_webpage %>%
  html_elements(".number no-mrg-btm") %>% 
  html_text()

即使我已经安装并加载了rvest,我也会收到一条错误消息,提示“找不到函数“html_elements””。

获取这些不同数字的最佳策略是什么?为什么我会收到该错误消息?谢谢。

标签: rxmlweb-scrapingrvest

解决方案


该数据来自您可以在浏览器网络选项卡中找到的 API 请求。它返回 json。直接向该页面发出请求(因为您没有浏览器可以根据登录页面执行此操作):

library(jsonlite)

data <- jsonlite::read_json('https://api.caschooldashboard.org/LEAs/01611766000590/6/true')
print(data$enrollment)

推荐阅读