0

这是我的代码:

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

目前,我可以正确地获取里面的链接titles

我想进入每个链接并抓取每个博客文章的内容以进行关键字频率计数。

我相信我的伪代码基本上是。

  1. 对于每个条目titles
  2. 获取条目并检索 HTML 标记
  3. 解析标记并提取下的内容div id="mainContent"

如何在 R 中执行我的伪代码的第 1 步和第 2 步?

这是我到目前为止的进度截图:

在此处输入图像描述

4

1 回答 1

1

我想这就是你想要的?

该函数foo接受一个元素x,检索 html 对象,分配给tmp. 然后xpathApply(tmp, '//div[@id="mainContent"]')说获取tmp对象,并获取div具有 id 的元素mainContent。就是这样。该lapply行通过函数传递对象列表,因此您应该获得所需的 html 对象foo()的长度列表。titles

foo <- function(x){
  tmp <- htmlParse(x)
  xpathApply(tmp, '//div[@id="mainContent"]')
}
lapply(titles[2:3], foo)
于 2013-11-07T06:32:03.573 回答