使用R从具有下拉框的网站中抓取数据

时间:2017-05-15 08:53:54

标签: r drop-down-menu web-scraping rvest

我试图从韩国棒球联盟的网站上搜集数据,存储玩家'每年的统计数据。

http://www.koreabaseball.com/Record/Player/HitterDetail/Daily.aspx?playerId=79215 (这是韩语,但我只需要下表中的数字,所以这不重要)

如果我从显示玩家日常状态的区域右上角的下拉框中选择一年,它会自动右转进入所需的页面。

我在下面尝试过:

library(httr)
library(rvest)
url <- "http://www.koreabaseball.com/Record/Player/HitterDetail/Daily.aspx?playerId=76249"
baseball <- POST(url, body = 
list("ctl00$ctl00$ctl00$cphContents$cphContents$cphContents$ddlYear" = "2017"),
             encode = "form")

page_2017 <- read_html(content(baseball, as="text", encoding="UTF-8"))

table <- html_nodes(page_2017, "tbody > tr > td")
table_text <- html_text(table)
record <- as.data.frame(matrix(table_text, ncol = 17, byrow = TRUE))

问题是,即使我把其他年份放在POST功能中,我也只能从2017年获得相同的数据。

V1   V2    V3 V4 V5 V6 V7 V8 V9 V10 V11 V12 V13 V14 V15 V16   V17
1  03.31 한화 0.333  3  0  1  0  0  0   1   0   0   0   0   2   0 0.333
2  04.01 한화 0.000  4  0  0  0  0  0   0   0   0   0   0   3   0 0.143
3  04.02 한화 0.333  6  0  2  0  0  0   1   0   0   0   0   1   0 0.231
4  04.04   kt 0.400  5  0  2  1  0  0   1   0   0   0   0   1   0 0.278

我希望有人可以帮助我解决这个问题,并且非常感谢。关于下拉框的一般解决方案将是最好的,但是也可以理解针对此问题的特定解决方案。

0 个答案:

没有答案