Сохранение нескольких источников HTML в R

Я создал следующий код

library('XML')
library('rvest')

links <- c('https://www.google.com/', 
           'https://www.youtube.com/?gl=US', 
           'https://news.google.com/news/u/0/headlines?hl=en&ned=us')

for (i in 1:3){
  html_object <- read_html(links[i])
  write_xml(html_object, file="test.html")
}

Я хочу сохранить все эти файлы как HTML-файлы, но мой текущий код только один. Я предполагаю, что он продолжает переписывать один и тот же файл 3 раза для этого примера. Как бы я сделать так, чтобы он не переписывал один и тот же файл? В идеале я хотел бы, чтобы имя файла этих HTML-файлов было их URL-ссылкой, но я не могу понять, как это сделать с несколькими ссылками. Например, моим конечным результатом должны быть три HTML-файла с названиями " https://google.com/", " https://www.youtube.com/?gl=US" и " https://news.google.come/news/u/0/headlines?h1-en&ned=us'.

1 ответ

Решение

Как насчет использования paste0() создать ваше имя файла в цикле?

for(i in 1:length(links)){
  html_object  <- read_html(links[i])
  somefilename <- paste0("filename_", i, ".html")
  write_xml(html_object, file = somefilename)
}
Другие вопросы по тегам