我正在尝试为潜在的统计项目抓取一些数据,但似乎无法获得每页的所有节点。相反,它仅在移动下一页之前抓取第一个。
library(rvest)
pages <- pages <- c("https://merrimackathletics.com/sports/" %>%
paste0(c("baseball", "mens-basketball", "mens-cross-country") %>%
paste0("/roster")))
Major <- lapply(pages,
function(url){
url %>% read_html(url) %>%
html_node(".sidearm-roster-player-major") %>%
html_text()
})
随后,以上内容仅返回:
> Major
[[1]]
[1] "Business Adminstration"
[[2]]
[1] "Communications"
[[3]]
[1] "Global Management"
我应该如何索引节点,以使我获得的不仅仅是每页的第一个“主要”索引?谢谢!
答案 0 :(得分:1)
函数html_node
仅提取第一个元素。 html_nodes
会做您想要的。
从文档中:
html_node
就像[[
一样,它总是只提取一个元素。给定节点列表时,html_node
将始终返回相同长度的列表,html_nodes
的长度可能更长或更短。