Вы можете получить заголовок:
library(rvest)
library(tidyverse)
test <- 'https://247sports.com/Season/2021-Football/Commits/?Page=1'
test_data$title <- test %>%
read_html %>%
html_nodes('div.status img') %>%
html_attr('title') %>%
.[c(TRUE, FALSE)]
test_data
# V1 V2 V3 V4 title
#1 Kyle Ecker Committed: 8/5/2020 NA OT San Diego
#2 Josh Bertholotte Committed: 8/5/2020 NA OLB Hawaii
#3 Antario Brown Committed: 8/5/2020 0.8516 RB South Carolina
#4 J'Kalon Carter Committed: 8/5/2020 NA WR Illinois State
#5 Stephon Dubose Committed: 8/5/2020 NA OG Old Dominion
#...
Я использую .[c(TRUE, FALSE)]
для выбора альтернативных значений, потому что использование html_attr('title')
возвращает каждое значение дважды.
Чтобы интегрировать его в функцию map
, мы можем сделать:
all_data <- map_df(commits, ~{
webpage <- .x %>% read_html
df1 <- webpage %>%
html_nodes(".ri-page__star-and-score .score ,.position ,.ri-page__name-link") %>%
html_text() %>%
str_trim %>%
str_split(" ") %>%
matrix(ncol = 3, byrow = T) %>%
as.data.frame
df1$title <- webpage %>%
html_nodes('div.status img') %>%
html_attr('title') %>%
.[c(TRUE, FALSE)]
df1
})