我们如何使用R中的Rcrawler从子域中提取信息?

问题描述 投票:1回答:2

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

我尝试过使用Rcrawler

library(Rcrawler)

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

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

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

r web-scraping rcrawler
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列表和页面详细信息(contenttype,HTTP状态,out-links和in-links的数量,编码类型和级别),以及
  • DATA:全局环境中包含已删除内容的列表列表。

INDEX中的Id变量对应于DATA中的list元素。上面的代码片段会查找与您感兴趣的网址相对应的ID。

旁注:既然您知道要查找的网址,那么浏览整个网站就像是一种矫枉过正。


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\。”,“”,网站),“/”)[[c(1,:下标超出范围)

© www.soinside.com 2019 - 2024. All rights reserved.