【发布时间】:2015-03-14 22:23:06
【问题描述】:
我对在 R 中抓取/解析 HTML 相当陌生。我正在尝试从 http://totalfootballstats.com/PlayerWR.asp?id=1218565 的职业接收统计和职业冲刺统计表中获取数据。 我知道 read readHTMLtable 函数,但是这两个表都嵌入了很多垃圾中,我似乎无法通过根的子节点。
编辑:上述问题已解决。但是对于网站http://www.sports-reference.com/cfb/players/a-index.html,我正在尝试遍历所有玩家并访问他们的数据。我在访问他们各自的 url 链接时遇到了麻烦。我试过了:
fb=htmlParse("http://www.sports-reference.com/cfb/players/a-index.html")
p1=getNodeSet(fb,'//pre')
con = textConnection(xmlValue(p1[[100]]))
players100 = read.table(con)
但这会导致错误“扫描错误(文件,内容,nmax,sep,dec,quote,skip,nlines,na.strings,: 第 3 行没有 5 个元素”
我尝试的另一件事是:
links <- xpathSApply(fb, "//a/@href")
但我觉得应该有更好的方法来做到这一点?
【问题讨论】:
-
欢迎来到 SO 并欢迎来到从可怕网站抓取数据的世界。如果您显示一些指示(通过代码,而不是文字)您实际上尝试了某些东西,您可能会得到一些具体的帮助(这不是代码编写服务)。
-
我现在引用下面答案中提供的网站,但来自我拥有的原始播放器页面:fb=htmlParse("sports-reference.com/cfb/players/a-index.html") p1=getNodeSet(fb,'//pre') 来自在这里,我有点想用所有的球员、年份和附加的网址制作一个表格。我尝试为每个块制作一个表格,就像这样。con = textConnection(xmlValue(p1[[100]])) player100 = read.table (con)但这会导致错误:“扫描错误(文件,什么,nmax,sep,dec,quote,skip,nlines,na.strings,:第3行没有5个元素”
-
@user3451457 - 获取链接网址几乎总是
//a/@href或//link/@href -
另外,看看here了解如何获取页面上的所有链接,然后看看W3 Schools XML Tutorials
标签: html xml r parsing web-scraping