【发布时间】:2021-03-16 17:18:14
【问题描述】:
我想从这个 website 收集电子邮件我创建了这个循环,当我单独运行每个部分时它可以工作,但当它一起运行时它不起作用。
library(RSelenium)
#######################################University College Dublin
dep<-"https://people.ucd.ie/search?by=text"
rD <- rsDriver(browser="firefox", port=4545L, verbose=F)
remDr <- rD[["client"]]
remDr$navigate(dep)
mail<-list()
for(i in 2:65){
if(i==2){
webElem <- remDr$findElement(using = 'xpath', '//*[@id="app"]/div/div/main/div[2]/div[3]/div[2]/div[1]/div[3]/span[2]')
webElem$clickElement()
}else{
w<- paste0('//*[@id="app"]/div/div/main/div[2]/div[3]/div[2]/div[1]/div[3]/span[', i,"]/button" )
webElem <- remDr$findElement(using = 'xpath', w)
webElem$clickElement()
}
for(j in 1:25){
#click each person 25 x page
ww<-paste0('//*[@id="app"]/div/div/main/div[2]/div[3]/div[2]/div[4]/div[', j,"]/div[1]/div[2]/div[1]/a" )
webElem <- remDr$findElement(using = 'xpath', ww)
webElem$clickElement()
#click emails
webElem <- remDr$findElement(using = 'xpath', '//*[@id="app"]/div/div/main/div[1]/div[3]/div[3]/div[2]/div[1]/div[2]/span/a')
ma<-webElem$getElementText()
if(length(ma)!=0){mail<-c(mail,ma)}
webElem$goBack()
rm(ma)
}
}
【问题讨论】:
-
谢谢@Konrad Rudolph 现在它更加清晰和健全。你知道我为什么得到这个吗?在这种情况下是否有不同的 xpath 可以调用?你有代码建议吗?
标签: r web-scraping rvest rselenium