如何使用rvest获取html_表中的链接? library(“rvest”) url% html_节点(xpath='/*[@id=“pageContainer”]/表[1]')%>% html_表格(填充=T) 表[[1]]

如何使用rvest获取html_表中的链接? library(“rvest”) url% html_节点(xpath='/*[@id=“pageContainer”]/表[1]')%>% html_表格(填充=T) 表[[1]],r,rvest,R,Rvest,单元格的html内容如下所示 library("rvest") url <- "myurl.com" tables<- url %>% read_html() %>% html_nodes(xpath='//*[@id="pageContainer"]/table[1]') %>% html_table(fill = T) tables[[1]] 但在我只得到的粗略html中 点击这里 如果要获取“href”标记的值,请使用

单元格的html内容如下所示

library("rvest")
url <- "myurl.com"
tables<- url %>%
      read_html() %>%
      html_nodes(xpath='//*[@id="pageContainer"]/table[1]') %>%
      html_table(fill = T)
tables[[1]]

但在我只得到的粗略html中

点击这里


如果要获取“href”标记的值,请使用:

<td><a href="http://somelink.com" target="_blank">Click Here</a></td>

我在(xpath online)上对此进行了测试。

您可以通过使用
trace
编辑
rvest::html\u表来处理此问题

现有行为的例子:

//*[@id="pageContainer"]/table[1]//@href
trace(rvest:::html_table.xml_node, quote({ 
  values      <- lapply(lapply(cells, html_node, "a"), html_attr, name = "href")
  values[[1]] <- html_text(cells[[1]])
}), at = 14)
新行为:

//*[@id="pageContainer"]/table[1]//@href
trace(rvest:::html_table.xml_node, quote({ 
  values      <- lapply(lapply(cells, html_node, "a"), html_attr, name = "href")
  values[[1]] <- html_text(cells[[1]])
}), at = 14)

您对所有单个单元的HREF满意吗?还是您特别希望HREF采用data.frame格式?因为收集href属性应该很容易:
%%>%html\u节点(“适当的xpath或选择器”)%%>%html\u属性(“href”)
XML::gethtmlinks(url,xpQuery=“//*[@id=“pageContainer”]/table[1]/@href”)
应该是您所需要的全部内容。似乎这样可以在单元格中获得单个链接。如何修改它以获得单元格中的所有链接?