我正在尝试从中抓取数据http://www.footballoutsiders.com/stats/snapcounts,但我无法更改网站下拉框中的字段(“团队”、“周”、“位置”和“年份”)。我尝试使用 rvest 来抓取与 team =“ALL”、week=“1”、pos =“All”和year=“2015”相关的表,如下所示。
url <- "http://www.footballoutsiders.com/stats/snapcounts"
pgsession <- html_session(url)
pgform <-html_form(pgsession)[[3]]
filled_form <-set_values(pgform,
"team" = "ALL",
"week" = "1",
"pos" = "ALL",
"year" = "2015"
)
submit_form(session=pgsession,form=filled_form, POST=url)
y <- read_html("http://www.footballoutsiders.com/stats/snapcounts")
y <- y %>%
html_nodes("table") %>%
.[[2]] %>%
html_table(header=TRUE)
此代码返回与下拉框中的默认变量关联的表,这些变量是 team = "ALL"、week= "20"、pos = "QB" 和 Year= "2015",这是一个仅包含 11 个观测值的数据框。如果它确实更改了字段,它将返回一个包含 1,695 个观测值的数据框。
您可以捕获提交表单时生成的会话,并将该会话用作html_nodes
:
d <- submit_form(session=pgsession, form=filled_form)
y <- d %>%
html_nodes("table") %>%
.[[2]] %>%
html_table(header=TRUE)
dim(y)
#[1] 1695 11
否则,如果您使用read_html(url)
您正在阅读原始页面。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)