与parLapply R一起使用时read_html出现故障

时间:2018-11-24 21:17:18

标签: r parallel-processing rvest

因此,我正在尝试对具有数百万个单独页面的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函数上,而且发生在doParallel的foreach上,并且由于我使用Windows,因此无法使用许多其他选项进行并行处理。

0 个答案:

没有答案