Я успешно извлек несколько файлов .json с сайта (внутренняя компания).Чтобы получить в формате .json, я должен указать с помощью URL-вызова (например, «renderasJSON = TRUE»).Как я уже сказал, цикл работает нормально и загружает каждый отдельный файл (~ 500).Тем не менее, файлы пишутся в виде сырой JSON вице-печати.Это вызывает проблемы, так как любой из связанных с j-пакетом R-пакетов (rjsonlite, RIOJSON и т. Д.) Не может успешно вызвать 'fromJSON' для этих файлов, в частности, выдает ту же ошибку (недопустимый байт символа ------- ^ прямо здесь),Мне удалось обойти это, по-разному отображая страницу с помощью запроса GET, но мне интересно, есть ли способ выполнить мой оригинальный метод GET и сохранить файлы .json в правильном формате.
Iпопробовал комбинацию предложений без успеха .. опубликует последний код в разделе "Показать код":
Попытки ... [здесь] Ошибка синтаксического анализа JSON, недопустимый символ )
[здесь] чтение файла json в R: лексическая ошибка: недопустимый символ в тексте json
[здесь] Форматирование файла JSON в R: лексическая ошибка скодировка символов
[здесь] R: Обработка ответа об ошибке в формате JSON
Я также пытался использовать другие предложения сообщества, такие как ... x <-fromJSON (toJSON (// без успеха. </p>
dir.create('JSON')
links<-as.list(df$urls)
for(i in links){
try(GET
(url=I,
write_disk(file.path('JSON',basename(I))),
progress()
))
Sys.sleep(5)
}
#the above successfully pulls all files. I run a simple file.rename to
#append '.json' to the end of the files as they are pulled without a file
#extension.
#Attempt to run 'fromJSON' fails
library(jsonlite)
out <- lapply(files, function(fn) {
o <- fromJSON(file(fn), flatten = TRUE)
as.data.frame(o)$element$subdata$data
})
> lexical error: invalid bytes in UTF8 string.