Я пытаюсь загрузить несколько URL через R, используя pahtomjs, поскольку веб-сайты содержат javascript. Я могу загрузить одну веб-страницу, используя код в последнем поле кода ниже, но мне нужно, чтобы он работал для нескольких веб-сайтов. Чтобы найти этот код, я использовал этот урок: http://flovv.github.io/Scrape-JS-Sites/
У меня есть строка символов URL-адресов, URL-адресов [i] и одна для пунктов назначения, где они должны быть сохранены URL-адреса [i].
Ранее я пробовал:
for(i in seq_along(urls)) {
download.file(urls[i], destinations[i], mode="wb")
}
Однако это не сработало, поскольку веб-сайты содержат JavaScript.
Я пытался следить за ответами в этом посте, но был довольно смущен: Очистка нескольких URL с помощью циклов в PhantomJS
writeLines("var url = 'url link';
var page = new WebPage();
var fs = require('fs');
page.open(url, function (status) {
just_wait();
});
function just_wait() {
setTimeout(function() {
fs.write('1.html', page.content, 'w');
phantom.exit();
}, 2500);
}
", con = "scrape.js")
js_scrape <- function(url = "url link",
js_path = "scrape.js",
phantompath = "phantomjs"){
lines <- readLines(js_path)
lines[1] <- paste0("var url ='", url ,"';")
writeLines(lines, js_path)
command = paste(phantompath, js_path, sep = " ")
system(command)
}
js_scrape()
Пожалуйста, помогите мне!