我试图获取Web服务器目录(及其所有子目录)中所有XML文档的列表。
我试过这些例子:
One:
library(XML)
url <- "https://cmgds.marine.usgs.gov/metadata/pcmsc/"
getHTMLLinks(url)
返回:character(0) Warning message: XML content does not seem to be XML
Two:
readHTMLTable(url)
返回相同的错误。
我也尝试过其他网站,例如示例中包含的网站。我看到了一些关于此错误的问题(example),说要将https
更改为http
。当我这样做时,我得到Error: failed to load external entity
。
有没有办法可以获得该URL的所有XML文件列表以及使用R的所有子目录?
答案 0 :(得分:2)
从页面获取原始html:
require(rvest)
url <- "https://cmgds.marine.usgs.gov/metadata/pcmsc/"
html <- read_html(url)
然后,我们将使用html_nodes
获取所有链接。名称被截断,因此我们需要获取href
属性而不是仅使用html_table()
。
data <- html %>% html_nodes("a") %>% html_attr('href')