[英]How to read specific tags using XML2
我正在尝试使用xml2获取https://www.ato.gov.au/sitemap.xml (注意,这是一个〜9mb的文件)中的所有url。 任何指针表示赞赏。
library("xml2")
data1 <- read_xml("https://www.ato.gov.au/sitemap.xml")
xml_find_all(data, ".//loc")
我没有得到我需要的输出:
{xml_nodeset(0)}
不使用xml2
但是我可以使用rvest
来获取它
library(dplyr)
library(rvest)
url <- "https://www.ato.gov.au/sitemap.xml"
url %>%
read_html() %>%
html_nodes("loc") %>%
html_text()
万一您需要数据框中的所有网址,可以使用以下代码:
library(XML)
library(xml2)
library(httpuv)
library(httr)
library(RCurl)
library(data.table)
library(dplyr)
url <- "https://www.ato.gov.au/sitemap.xml"
xData <- getURL(url)
doc <- xmlParse(xData)
data<-xmlToList(doc)
a<-as.data.frame(unlist(data))
a<-dplyr::filter(a,grepl("http",`unlist(data)`) )
head(a)
上面的代码将为您提供一个包含所有URL列表的数据框。 我只是想知道您还可以使用“ Xenu”网址提取程序软件从网站中提取未包含在站点地图中的网址。 如果您卡在中间某个地方,请告诉我。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.