Вкл. https://scihub.copernicus.eu/catalogueview/ ESA предоставляет доступ к файлам с данными сбора для ряда спутников.
Эти файлы организованы по спутнику-> год-> месяц.Я хотел бы загрузить и обработать эти файлы через R для дальнейшего анализа.
Я хотел бы пройтись по структуре "directory", используя rvest / purrr для сбора списка имен и полных путей к файлам csv.
Мне удается получить первый уровень (поэтому(список лет на спутник)
library(rvest)
library(purrr)
baseURL<-"https://scihub.copernicus.eu/catalogueview/"
read_years<-function(baseURL, satellite){
URL <<- paste0(baseURL,satellite)
page <- read_html(URL)
page %>% html_nodes("a") %>% html_attr('href') %>%
map(~ discard(.x, ~ stringi::stri_length(.x)!=5))%>%compact(.)
}
#read_years(baseURL,satellite)
# provide list of satellites
sat_list<-list("S1A","S1B", "S2A","S2B")
# retrieve list of years per satellite
year_list<-map(sat_list, ~read_years(baseURL,(.)))
Наивным способом было бы создать все возможные комбинации и применить оператор карты, аналогичный предыдущему, для сбора существующих комбинаций.В целях изучения и понимания я предпочитаю путешествовать по структуре каталогов / pages.
Есть ли способ использовать rvest / purrr для отображения списка списков, являющегося результатом другой карты?
Итак, в конце я бы хотел список, подобный каждому интересующему спутнику со всеми доступными файлами.
"https://scihub.copernicus.eu/catalogueview/S2A/2016/01/S2A_20160126_OPENHUB_catalogue_20190131235959.csv"" https://scihub.copernicus.eu/catalogueview/S2A/2016/01/S2A_20160128_OPENHUB_catalogue_20190131235959.csv" "https://scihub.copernicus.eu/catalogueview/S2A/2016/01/S2A_20160129_OPENHUB_catalogue_20190131235959.csv" "https://scihub.copernicus.eu/catalogueview/S2A/2016/01/S2A_20160130_OPENHUB_catalogue_20190131235959.csv"" https://scihub.copernicus.eu/catalogueview/S2A/2016/01/S2A_20160131_OPENHUB_catalogue_20190131235959.csv" "https://scihub.copernicus.eu/catalogueview/S2A/2016/02/S2A_20160201_OPENHUB_catalogue_20190131235959.csv" и т. Д.