Jak zoptymalizować skrobanie za pomocą getURL () w R
Próbuję zeskrobać wszystkie rachunki z dwóch stron na stronie internetowej niższej izby parlamentu Francji. Strony obejmują lata 2002-2012 i reprezentują mniej niż 1000 rachunków każdy.
W tym celu zeskrobujęgetURL
przez tę pętlę:
<code>b <- "http://www.assemblee-nationale.fr" # base l <- c("12","13") # legislature id lapply(l, FUN = function(x) { print(data <- paste(b, x, "documents/index-dossier.asp", sep = "/")) # scrape data <- getURL(data); data <- readLines(tc <- textConnection(data)); close(tc) data <- unlist(str_extract_all(data, "dossiers/[[:alnum:]_-]+.asp")) data <- paste(b, x, data, sep = "/") data <- getURL(data) write.table(data,file=n <- paste("raw_an",x,".txt",sep="")); str(n) }) </code>
Czy istnieje sposób na optymalizacjęgetURL()
działa tutaj? Wydaje mi się, że nie korzystam z jednoczesnego pobierania przez przekazanieasync=TRUE
opcja, która daje mi ten sam błąd za każdym razem:
<code>Error in function (type, msg, asError = TRUE) : Failed to connect to 0.0.0.12: No route to host </code>
Jakieś pomysły? Dzięki!