Очистите веб-страницу с помощью R и Chrome - PullRequest
1 голос
/ 15 октября 2019

Я пытаюсь вытащить таблицу с этого сайта в R, используя путь из проверки Chrome, но он не работает. Не могли бы вы помочь мне с этим? Спасибо.

library(rvest)
library(XML)

url <- "https://seekingalpha.com/symbol/MNHVF/profitability"
webpage <- read_html(url)
rank_data_html <- html_nodes(webpage, 'section#cresscap') # table.cresscap-table
rank_data <- html_table(rank_data_html)
rank_data1 <- rank_data[[1]]

1 Ответ

1 голос
/ 15 октября 2019

Данные поступают от дополнительного вызова xhr, который выполняется динамически на странице. Вы можете сделать запрос на это и обработать ответ json с помощью jsonlite. Извлеките соответствующий список списков и используйте dplyr bind_rows для генерации вашего вывода. Вы можете переименовать столбцы, чтобы соответствовать столбцам на странице, если хотите.

library(jsonlite)
library(dplyr)

data <- jsonlite::read_json('https://seekingalpha.com/symbol/MNHVF/cresscap/fields_ratings?category_id=4&sa_pro=false')
df <- bind_rows(data$fields)
head(df)
...