希望从此页上的表中将数据导入R:
https://legacy.baseballprospectus.com/standings/index.php?odate=2019-09-10
我尝试过使用XML和httr的多种方法,但都没有碰运气。已经查看过以前的帖子,包括:
Read data from a php website with R
和
Scraping html tables into R data frames using the XML package
想知道我是否使用的不是源中正确的表ID,或者表在给定我当前使用的工具时格式是否正确?
非常感谢所有帮助!预先感谢!
答案 0 :(得分:0)
这并不能完全满足您的需求,但这可能有助于您入门:
library(XML)
fname <- "standings20190910.html"
download.file("https://legacy.baseballprospectus.com/standings/index.php?odate=2019-09-10", destfile=fname)
doc0 <- htmlParse(file=fname, encoding="UTF-8")
doc1 <- xmlRoot(doc0)
doc2 <- getNodeSet(doc1, "//table[@id='content']")
standings <- readHTMLTable(doc2[[1]], header=TRUE, skip.rows=1, stringsAsFactors=FALSE)
您可以查看您要抓取的表的HTML源代码,然后尝试弄清楚如何创建有用的R对象。仔细查看XML软件包(https://cran.r-project.org/web/packages/XML/XML.pdf)手册中getNodeSet
和readHTMLTable
的文档。