Как оптимизировать парсинг с помощью getURL()в R

Пытаюсь соскоблить все законопроекты с двух страниц сайта нижней палаты парламента Франции. Страницы охватывают 2002-2012 год и представляют собой менее 1000 банкнот каждая.

Для этого я прочесываю getURLчерез этот цикл:

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)
})

Есть ли способ оптимизировать здесь функцию getURL()? Кажется, я не могу использовать одновременную загрузку, передав опцию async=TRUE, которая каждый раз выдает одну и ту же ошибку :

Error in function (type, msg, asError = TRUE)  : 
Failed to connect to 0.0.0.12: No route to host

. Есть идеи? Спасибо!

6
задан Fr. 9 April 2012 в 02:41
поделиться