Rvest обработка скрытого текста - PullRequest
1 голос
/ 29 сентября 2019

Я не вижу данных / текста, которые я ищу при просмотре веб-страницы

Я попытался найти проблему, но безуспешно.Я также пытался использовать xpath, но я получаю {xml_nodeset (0)}

require(rvest)
url <- "https://www.nasdaq.com/market-activity/ipos"
IPOS <- read_html(url)
IPOS %>% xml_nodes("tbody") %>% xml_text()

Вывод:

[1] "\n            \n          \n          \n            \n          \n        "

Я не вижу никаких данных IPO.Ожидаемый результат должен содержать таблицу для «IPO по цене»: символ, название компании и т.д ...

enter image description here

Ответы [ 2 ]

1 голос
/ 29 сентября 2019

Нет необходимости в дорогом RSelenium.На вкладке сети есть вызов API, который возвращает все как json.

Например,

library(jsonlite)

data <- jsonlite::read_json('https://api.nasdaq.com/api/ipo/calendar?date=2019-09')

View(data$data$priced$rows)

enter image description here

1 голос
/ 29 сентября 2019

Кажется, что данные таблицы загружаются скриптами.Вы можете использовать пакет RSelenium, чтобы получить их.

library(rvest)
library(RSelenium)

rD <- rsDriver(port = 1210L, browser = "firefox", check = FALSE)
remDr <- rD$client

url <- "https://www.nasdaq.com/market-activity/ipos"
remDr$navigate(url)

IPOS <- remDr$getPageSource()[[1]] %>% 
  read_html() %>% 
  html_table(fill = TRUE)

str(IPOS)

PRICED <- IPOS[[3]]

...