Очистка с помощью rvest и преобразование вывода html во фрейм данных - PullRequest
0 голосов
/ 05 января 2019

При просмотре веб-сайта Бомбейской фондовой биржи для финансовых результатов в R, я получаю и HTML-код.

read_html("https://api.bseindia.com/BseIndiaAPI/api/TabResults/w?scripcode=500470&tabtype=RESULTS") %>% 
    html_text()

Однако я получаю вывод, как показано ниже:

[1] "\"{\\\"col1\\\":\\\"(in Cr.)\\\",\\\"col2\\\":\\\"Sep-18\\\",\\\"col3\\\":\\\"Jun-18\\\",\\\"col4\\\":\\\"FY17-18\\\",\\\"resultinCr\\\":[{\\\"title\\\":\\\"Revenue\\\",\\\"v1\\\":\\\"17,902.04\\\",\\\"v2\\\":\\\"16,405.46\\\",\\\"v3\\\":\\\"60,519.37\\\"},....

Как мне извлечь эти данные во фрейм данных?

Я пытался использовать gsub для извлечения цифр и символов из текстового вывода. Но символы обратной косой черты затрудняют это. Формат таблицы должен быть таким:

Table Snapshot

1 Ответ

0 голосов
/ 07 января 2019
url<-"https://api.bseindia.com/BseIndiaAPI/api/TabResults/w?scripcode=500470&tabtype=RESULTS"
library(rvest)
page<-html_session(url)
json<-readBin(page$response$content, what="json")

library(jsonlite)
df<-fromJSON(json)
df<-fromJSON(df)

#Result in CR
df$resultinCr

#result in Million
df$resultinM

Результат в формате JSON. Разобрать JSON с помощью пакета JSONLITE.

...