我正在构建这个刮板来从这个网页中提取比赛数据:https : //www.basketball-reference.com/boxscores/201410280LAL.html 刮板会为这场比赛拉取主客队的所有信息,但不表明球员只为他们的名字和数据而效力的球队的实际名称
下面是我到目前为止的刮板,它为主客队和客队提取基本和高级统计数据,将其塑造成一个数据框并丢弃不是球员姓名及其统计数据或球队总数的行,并将适当的列转换为它们各自的变量类型。
library(rvest)
library(xml2)
library(purrr)
library(dplyr)
url <- "https://www.basketball-reference.com/boxscores/201410280LAL.html"
webpage <- read_html(url)
tbls <- webpage %>% html_nodes("table") %>% html_table(header = FALSE, fill = TRUE)
tbls <- tbls %>% lmap( ~ set_names(.x, nm = pluck(.x, 1, 1, 1))) %>% map(~ set_names(.x, nm = .x[2, ]))
awaybas <- tbls %>% .[1]
awayadv <- tbls %>% .[2]
homebas <- tbls %>% .[3]
homeadv <- tbls %>% .[4]
ab1 <- as.data.frame(awaybas)
aa1 <- as.data.frame(awayadv)
hb1 <- as.data.frame(homebas)
ha1 <- as.data.frame(homeadv)
ab <- ab1[-c(1,2,8),]
aa <- aa1[-c(1,2,8),]
hb <- hb1[-c(1,2,8),]
ha <- ha1[-c(1,2,8),]
ab[,c(3:21)] <- sapply(ab[,c(3:21)], as.numeric)
aa[,c(3:16)] <- sapply(aa[,c(3:16)], as.numeric)
hb[,c(3:21)] <- sapply(hb[,c(3:21)], as.numeric)
ha[,c(3:16)] <- sapply(ha[,c(3:16)], as.numeric)
这段代码运行良好,但我想提取团队名称缩写并将它们添加到各自的数据帧中(对于这个游戏,它将是 HOU 和 LAL)但我不确定如何从 HTML 网页的其他部分提取这些信息