read_html неисправности при использовании с parLapply R - PullRequest
0 голосов
/ 25 ноября 2018

Итак, я пытаюсь сделать из Интернета API-интерфейс с миллионами отдельных страниц.Для этого я использую параллельную обработку и пакет rvest.Проблема возникает потому, что функция read_html возвращает пустой документ XML при использовании внутри кластера.У кого-нибудь есть решение для этого?До сих пор я использовал функцию getURL, но проблема в том, что размер объекта увеличивается от одной функции к другой, и когда речь идет о десятых долях миллионов веб-сайтов, это имеет большое значение.Мой пример (игрушечный) кода, который показывает проблему:

library(parallel)
docss<-c('https://stackoverflow.com/' , 'https://stackoverflow.com/')

read_html(paste0(docss[1]))

cl<-makeCluster(2)

clusterEvalQ(cl, {require(rvest)})
clusterExport(cl,'docss')

dats<-parLapply(cl, docss, function(j){
read_html(paste0(docss[1]))
})

dats

stopCluster(cl)

Это происходит не только с функцией parLapply, но и с foreach doParallel, и, поскольку я работаю с Windows, я не могу использовать многие другие параметры для параллельногообработка.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...