gpt4 book ai didi

R 中的 XML 包 - readHTMLTable 和多行类

转载 作者:行者123 更新时间:2023-12-03 02:52:53 26 4
gpt4 key购买 nike

我正在尝试从此网站抓取数据 Extra Skater

进入数据框。从 HTML 代码中我可以看出,有多个行类,您可以通过它们切换以显示不同的表行。我只对具有标签的行感兴趣:

<tr class="team-game-stats team-game-stats-5v5close hidden">

例如:

<tr class="team-game-stats team-game-stats-5v5close hidden">
<td class="hidden">5v5close</td>

<td><a href="/game/2013-01-19-maple-leafs-canadiens">2013-01-19: Maple Leafs 2 at Canadiens 1</a></td>

<td class="number-right">19.7</td>
<td class="number-right">0</td>
<td class="number-right">0</td>
<td class="number-right">14</td>
<td class="number-right">18</td>
<td class="number-right">43.8%</td>
<td class="number-right">11</td>
<td class="number-right">15</td>
<td class="number-right">42.3%</td>
<td class="number-right">8</td>
<td class="number-right">11</td>
<td class="number-right">42.1%</td>
<td class="number-right">0.0%</td>
<td class="number-right">100.0%</td>

</tr>

当我运行代码时:

library(RCurl)
library(XML)
theurl <- "http://www.extraskater.com/team/montreal-canadiens/2012/gamelog"
tb = readHTMLTable(theurl)

它返回一个列表,其中所有表行都堆叠在一起。我想我必须使用 xpathSApply 才能获得更高的精度,但我不确定路径参数。当我运行代码时:

library(RCurl)
library(XML)

theurl <- "http://www.extraskater.com/team/montreal-canadiens/2012/gamelog"
webpage <- getURL(theurl)
webpage <- readLines(tc <- textConnection(webpage)); close(tc)

pagetree <- htmlTreeParse(webpage, useInternalNodes = TRUE)

# Extract table header and contents
results <- xpathSApply(pagetree, "//*/table[@class='team-game-stats team-game-stats-5v5close hidden']/tr/td", xmlValue)

结果返回为 NULL。

感谢您的宝贵时间。

最佳答案

试试这个:

xxpath = "//*[@class='team-game-stats team-game-stats-5v5close hidden']"
xpathApply(pagetree,xxpath,readHTMLList)

关于R 中的 XML 包 - readHTMLTable 和多行类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21522857/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com