我无法从以下网站提取数据。如果我通过浏览器访问 long_url,我可以看到我想要抓取的表,但是如果我使用 httr 从 R 中调用 url,我要么没有将数据返回给我,要么我不明白如何它正在归还给我。
base_url <- "http://web1.ncaa.org/stats/exec/records"
long_url <- "http://web1.ncaa.org/stats/exec/records?academicYear=2014&sportCode=MFB&orgId=721"
library(XML)
library(httr)
library(rvest) # devtools::install_github("hadley/rvest")
这些 POST 请求的结果和我一模一样,
doc <- POST(base_url, query = list(academicYear = "2014", sportCode = "MFB",
orgId = "721"))
doc <- POST(long_url)
class(doc)
两个 POST 请求都返回 200 的状态代码,文档类是“HTMLInternalDocument”和“XMLInternalDocument”,这是允许我抓取页面的普通 R 对象。但是随后的 rvest 和 XML 函数出现空,即使我知道 url 上有一个表。
table <- html_nodes(doc, css = "td")
table <- readHTMLTable(doc)
有人可以帮我解释一下我的 httr 请求缺少什么吗?我也尝试了一个没有运气的 GET 请求。