我正在尝试使用rvest从棒球 - reference.com刮擦表。我的代码是:
url="http://www.baseball-reference.com/leagues/NL/2016-standard-batting.shtml"
css=""#players_standard_batting.sortable.stats_table"
read_html(url) %>% html_node(css) %>% html_table()->nlbatting.raw
在这一点上,桌子有点乱,在任何地方都有一个"。我尝试了
nlbatting.raw %>% mutate(Name=repair_encoding(Name))->nlbatting.raw
这使一切看起来还不错,但是我得到了非常奇怪的行为。例如:
nlbatting.raw$Name[86]=="Yoenis Cespedes"
FALSE
和:
gsub(" ","_",nlbatting.raw$Name[86])
"Yoenis Cespedes"
我尝试了read_html()
中的不同编码参数,但没有任何改变。我尝试将编码独自一人,而只是弄清",但遇到了同样的问题。任何帮助都会很棒,谢谢!PS。长时间潜伏的第一次海报,对不起,如果我错过了明显的东西
编辑以修复html节点(从" .class"到" .stats_table")。它对我来说很好。再试一次:
library(rvest)
url <- "http://www.baseball-reference.com/leagues/NL/2016-standard-batting.shtml"
data <- read_html(url) %>% html_nodes(".stats_table") %>% html_table()
head(data[[1]])
head(data[[2]])