1

我想使用主 URL 从子域中提取网页内容。

我尝试使用 Rcrawler

library(Rcrawler)

Rcrawler(Website = "http://www.xbyte-technolabs.com/", no_cores = 4, no_conn = 4, ExtractCSSPat = c(".address"))

运行此代码后,我得到了 INDEX 默认变量,我们可以看到网站的所有 URL。有一个 URL "" http://xbyte-technolabs.com/contact_us.php " 我想从中提取联系方式。

现在有人可以指导我如何使用 R 中的 Rcrawler从主 URL“ http://xbyte-technolabs.com/ ”转到这个特定的 URL。

4

2 回答 2

0
library(Rcrawler)
Rcrawler(Website = "http://www.xbyte-technolabs.com/", no_cores = 1, no_conn = 1, ExtractCSSPat = c(".address"))

pageid <- as.numeric(INDEX$Id[INDEX$Url == 'http://xbyte-technolabs.com/contact_us.php'])
DATA[pageid]

根据?Rcrawler, Rcrawler 创建了两个全局变量

  • INDEX:表示通用 URL 索引的全局环境中的数据框,包括获取的 URL 列表和页面详细信息(内容类型、HTTP 状态、外链接和内链接的数量、编码类型和级别),以及

  • 数据:全球环境中包含已抓取内容的列表列表。

INDEX 中的 Id 变量对应于 DATA 中的列表元素。上面的代码片段查找与您感兴趣的 url 对应的 Id。

旁注:由于您知道要查找的 URL,因此爬过整个网站似乎有点过头了。

于 2017-12-22T07:40:31.637 回答
0
library(Rcrawler)

Rcrawler("http://www.xbyte-technolabs.com/",no_cores = 4,no_conn = 4)

for (i in length(INDEX)) {
  for (j in nrow(INDEX)) {

    Rcrawler(Website = INDEX[[i]][j], no_cores = 4, no_conn = 4, ExtractCSSPat = c(".address"))

  }

}
#Rcrawler(Website = INDEX[[i]][23], no_cores = 4, no_conn = 4, ExtractCSSPat = c(".address"))
class(DATA)
head(DATA)

ad <- DATA[[1]]
ad <- as.character(ad)
cat(ad)

抱歉,我认为此代码有问题任何人都会收到以下错误:

strsplit(gsub(" http://|https://|www\ .", "", Website), "/")[[c(1, : subscript out of bounds) 中的错误

于 2017-12-22T07:35:20.510 回答