【发布时间】:2014-09-23 17:17:04
【问题描述】:
我无法从以下网站提取数据。如果我通过浏览器访问 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 请求,但没有成功。
【问题讨论】: