r语言 - 使用 SelectorGadget 和 RVest 提取底层 html,而不是我想要捕获的文本



我试图从 basketballreference.com 中提取一列数据,这个特别:

http://www.basketball-reference.com/teams/ATL/2016.html

使用选择器小工具,我可以突出显示我想要的页面部分,然后它为我提供了放置 int html_nodes 函数的参数。但是,我正在尝试提取玩家的名称,但是当我复制并粘贴 selectorGadget 的输出时,它给了我名称包含的链接。我想知道是否有人知道如何让它与实际文本匹配,而不是它包含的链接。例如,列表中的第一个名字是肯特·巴泽莫尔。我希望它返回肯特·巴兹莫尔,但它正在捕获底层 html:

{xml_node} 'a href="/players/b/bazemke01.html"'

如果有人对如何清理这个问题有任何建议,我将不胜感激。谢谢。

获取节点只是第一步。提取文本是第二种方法 - 在这种情况下,html_text() .

在这种情况下,我会使用 xpath 表达式来获取玩家名称:

library(rvest)
u <- "http://www.basketball-reference.com/teams/ATL/2016.html"
u %>%
  read_html() %>%
  html_nodes(xpath = "//*[@id='roster']/tbody/tr/td[@data-stat='player']/a") %>%
  html_text()
[1] "Kent Bazemore"   "Tim Hardaway"    "Kirk Hinrich"    "Justin Holiday"  "Al Horford"     
[6] "Kris Humphries"  "Kyle Korver"     "Shelvin Mack"    "Paul Millsap"    "Mike Muscala"   
[11] "Lamar Patterson" "Dennis Schroder" "Mike Scott"      "Thabo Sefolosha" "Tiago Splitter" 
[16] "Edy Tavares"     "Jeff Teague"    

相关内容

最新更新