Очистка JSON-ссылки не работает с использованием fromJSON (url) - PullRequest
0 голосов
/ 31 мая 2019

Для просмотра веб-страниц я обычно использую команду jsonlite::fromJSON(url), которая обычно выполняет эту работу за меня. Однако на этот раз это внутри другого текста. В основном так:

jQuery([ 
JSON stuff that I am more used to 
]);

Как мне легко обойти это? Фактические данные выглядят так, когда я звоню по адресу (я коснулся его более красиво):

jQuery(
[
{"Date":"2019-05-31T00:00:00+02:00","FromTime":"2019-05-31T00:00:00+02:00","ToTime":"2019-05-31T00:15:00+02:00","Value":3315.9120000000003,"Value2":2584.244,"Value3":731.668},
{"Date":"2019-05-31T00:00:00+02:00","FromTime":"2019-05-31T00:15:00+02:00","ToTime":"2019-05-31T00:30:00+02:00","Value":3386.238,"Value2":2655.814,"Value3":730.424}
]
);

Сообщение об ошибке, которое я получаю, когда пытаюсь разобрать функцию, это

Error in parse_con(txt, bigint_as_char) : 
  lexical error: invalid char in json text.
                                       jQuery([{"Date":"2019-05-29T00:
                     (right here) ------^

Конечная цель - просто создать блок данных для продолжения работы.

1 Ответ

0 голосов
/ 31 мая 2019

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

library(rvest)
library(jsonlite)

url <- 'https://ws.50hertz.com/web02/api/PhotovoltaicActual/ListRecords?filterDateTime=2019-05-30T22:23:14.716Z&callback=jQuery&_=1559254994256'
r <- read_html(url) %>%
  html_node("p") %>% 
  html_text() 

x <- jsonlite::fromJSON(substr(r[1], 8, nchar(r) - 2))
...