Загрузка нескольких JSON файлов из папки сайта - PullRequest
1 голос
/ 24 апреля 2020

Я пытаюсь загрузить все файлы со словом «дерево» по этой ссылке .

Я знаю, как загрузить их по отдельности, но я не могу понять, как загрузить их все сразу, в соответствии с этими условиями (имеет слово «дерево»).

1 Ответ

2 голосов
/ 24 апреля 2020

Вероятно, это будет очень медленно (см. Примечания):

 library(dplyr)
library(rvest)
my_table<-read_html("https://www1.ncdc.noaa.gov/pub/data/metadata/published/paleo/json/")
my_table %>% 
  html_nodes(css="table") %>% 
  html_table() -> res
json_names<-res[[1]][,2]
json_names %>% 
  as_tibble() %>% 
  slice(3:nrow(.)) %>% 
  filter(grepl("tree",value)) %>% 
  pull(value) %>% 
  lapply(.,function(x) paste0("https://www1.ncdc.noaa.gov/pub/data/metadata/published/paleo/json/",
                                                x)) %>% 
  unlist() -> url_list

Примеры результатов:

 lapply(url_list[1:2],jsonlite::fromJSON)
[[1]]
[[1]]$xmlId
[1] "4355"

[[1]]$NOAAStudyId
[1] "2657"

[[1]]$studyName
[1] "Adams - Fernow Experimental Forest - QUPR - ITRDB WV003"

[[1]]$doi
[1] "https://doi.org/10.25921/jzj2-vy39"

ПРИМЕЧАНИЕ :

На * nix-машине я бы использовал wget.

...