遍历到由R检索的每个超链接中
这是我的代码:遍历到由R检索的每个超链接中,r,xpath,traversal,R,Xpath,Traversal,这是我的代码: library(XML) library(RCurl) url.link <- 'http://www.jamesaltucher.com/sitemap.xml' blog <- getURL(url.link) blog <- htmlParse(blog, encoding = "UTF-8") titles <- xpathSApply (blog ,"//loc",xmlValue) ## titles
library(XML)
library(RCurl)
url.link <- 'http://www.jamesaltucher.com/sitemap.xml'
blog <- getURL(url.link)
blog <- htmlParse(blog, encoding = "UTF-8")
titles <- xpathSApply (blog ,"//loc",xmlValue) ## titles
库(XML)
图书馆(RCurl)
url.link我想这就是你想要的
函数foo
接收元素x
,检索html对象,分配给tmp
。然后xpathApply(tmp,//div[@id=“mainContent”]”)
说获取tmp
对象,并获取具有idmainContent
的div
元素。就这样。lappy
行通过foo()
函数传递对象列表,因此您应该获得所需html对象的长度标题列表
foo <- function(x){
tmp <- htmlParse(x)
xpathApply(tmp, '//div[@id="mainContent"]')
}
lapply(titles[2:3], foo)
foo你能附上一些解释来解构代码吗?我对Python或R不是很熟悉。谢谢。例如,标题[2:3]的含义是什么?请参见子集介绍。标题[2:3]是指标题对象中的第二个和第三个元素。第一个是根url(站点的登录页,所以我想你不会想要的)。当然,我会解释得更清楚一些。我可能还有一些后续问题。让我花点时间来消化一下。谢谢你,斯科特!好吧,我或多或少理解这段代码。我只有一个后续问题。运行lappy时如何“查看”提取的内容?请尝试out