0
Ich habe die folgende Funktion, um einige URLs von einer Website mit RSelinium und Phantomjs zu bekommen.Nested Loop mit Anwendung Funktionen in R
get_url <- function(url){
rdr$navigate(url)
li <- rdr$findElements(using = 'xpath', "//div[@data-id]")
str <- sapply(li, function(x){x$getElementAttribute('outerHTML')})
if(length(str)>1){
tree <- htmlParse(str)
url <- getNodeSet(tree, '//div//a[@class="link url"]')
url <- sapply(url, xmlGetAttr, 'href')
}
}
Und die url
wird in einer 30 x 60-Matrix gespeichert.
Ich habe versucht, dies mit der folgenden verschachtelten Schleife.
for(i in 1:ncol(offset_url)){
for(j in 1:nrow(offset_url)){
url_list <- rbind(url_list,get_url(offset_url[j,i]))
}
}
Es dauert jedoch sehr lange.
Gibt es eine Möglichkeit, die Zeit mit Apply-Funktionen zu bearbeiten?
Es gibt eine Reihe von syntaktischen Problemen mit geposteten Code, die Sie als Beispiel zusammen werfen könnten. Können Sie tatsächlichen Code posten? – Parfait