Используя R, чтобы очистить веб-страницу? - PullRequest
0 голосов
/ 30 апреля 2020

Я пытаюсь загрузить данные с здесь левой навигационной панели. Я пробовал следующее:

library("rvest")
page <- html("https://experience.arcgis.com/experience/478220a4c454480e823b17327b2bf1d4/page/page_1/")
page %>%
   html_nodes(xpath = '//*[@id="ember39"]/div[2]/nav') %>% html_text()

character(0)

А также:

page %>%
   html_nodes(xpath = '//*[@id="ember39"]/div[2]/nav') %>% html_table()

list()

Буду признателен за любую помощь или предложение.

1 Ответ

1 голос
/ 30 апреля 2020

Данные легко доступны с одной из конечных точек, которые вы можете найти на вкладке сети. Возвращает json. Вы можете разобрать, что вы хотите.

library(jsonlite)
library(magrittr)

data <- jsonlite::read_json('https://services7.arcgis.com/mOBPykOjAyBO2ZKk/arcgis/rest/services/RKI_Landkreisdaten/FeatureServer/0/query?f=json&where=1%3D1&returnGeometry=false&spatialRel=esriSpatialRelIntersects&outFields=*&orderByFields=cases%20desc&resultOffset=0&resultRecordCount=1000&resultType=standard&cacheHint=true') %>%
        .$features

#e.g.
print(data[[1]]$attributes)
...