R 网站抓取技术,以获取感兴趣的网站包含的链接
我正在与以下网站合作: 特别是在这一页上,有57个众筹活动。这些众筹活动中的每一个都有文本,详细说明了他们想筹集资金的原因、迄今为止筹集的资金总额以及团队成员。一些活动还明确了筹款目标。我想写一些R代码,从57个站点中的每个站点收集和组织这些信息 目前,我正试图取消57个不同活动的57个链接中的每一个。 下面是我尝试的代码:R 网站抓取技术,以获取感兴趣的网站包含的链接,r,web,R,Web,我正在与以下网站合作: 特别是在这一页上,有57个众筹活动。这些众筹活动中的每一个都有文本,详细说明了他们想筹集资金的原因、迄今为止筹集的资金总额以及团队成员。一些活动还明确了筹款目标。我想写一些R代码,从57个站点中的每个站点收集和组织这些信息 目前,我正试图取消57个不同活动的57个链接中的每一个。 下面是我尝试的代码: library("RCurl") library("XML") library("stringr") url <- "http:/
library("RCurl")
library("XML")
library("stringr")
url <- "http://www.crowdrise.com/skollSEchallenge"
cat("URL:", url)
url.data <- readLines(url)
doc <- htmlTreeParse(url.data, useInternalNodes=TRUE)
xp_exp <- "//a[@href]"
links <- xpathSApply(doc, xp_exp,xmlValue)
但是,不包含57个网站的链接…我有点困惑。。。
有人能帮我吗
谢谢,举个例子:
xpathApply(doc, '//*[@id="teams-results"]/div/div/div/h4/a'
,xmlGetAttr,'href')
您将获得第一页的16个链接。但是您仍然存在激活后面的javascript代码(显示更多团队)以查看其余链接的问题。这个非常丑陋的解决方案得到了32个链接,非常详细,但不需要评估javascript
library(httr)
x <- as.character(GET("http://www.crowdrise.com/skollSEchallenge"))
x <- unlist(strsplit(x, split = "\n", fixed = TRUE))
x <- gsub("\t", "", grep('class="profile">', x, value = TRUE, fixed = TRUE))
x <- unlist(strsplit(x, split = 'class="profile">', fixed = TRUE))[-1]
x <- gsub("\r<div class=\"content\">\r<a href=\"/", "", x, fixed = TRUE)
x <- substr(x, 1, as.integer(regexpr('\"><img', x)) - 1)
x <- paste("www.crowdrise.com/", x, sep = '')
库(httr)
如果您在stackoverflow上搜索[r]webcrawl
,您会发现许多有用的问题
library(httr)
x <- as.character(GET("http://www.crowdrise.com/skollSEchallenge"))
x <- unlist(strsplit(x, split = "\n", fixed = TRUE))
x <- gsub("\t", "", grep('class="profile">', x, value = TRUE, fixed = TRUE))
x <- unlist(strsplit(x, split = 'class="profile">', fixed = TRUE))[-1]
x <- gsub("\r<div class=\"content\">\r<a href=\"/", "", x, fixed = TRUE)
x <- substr(x, 1, as.integer(regexpr('\"><img', x)) - 1)
x <- paste("www.crowdrise.com/", x, sep = '')