2013-04-02 5 views
5

Когда я пытаюсь разобрать JSON из объекта символа с URL-адреса Facebook, я получил сообщение «Ошибка inJSON (данные): неожиданный экранированный символ« \ o »в позиции 130». Проверьте это:Как заменить «неожиданный экранированный символ» в R

library(RCurl) 
library(rjson) 
data <- getURL("https://graph.facebook.com/search?q=multishow&type=post&limit=1500", cainfo="cacert.perm") 
fbData <- fromJSON(data) 
Error in fromJSON(data) : unexpected escaped character '\o' at pos 130 

#with RSONIO also error 
> fbData <- fromJSON(data) 
Erro em fromJSON(content, handler, default.size, depth, allowComments, : 
invalid JSON input 

Есть ли способ заменить этот символ '\ o', прежде чем пытаться разобрать JSON? Я пробовал gsub, но он не работал (или я делаю что-то неправильно).

datafixed <- gsub('\o',' ',data) 
Error: '\o' is an unrecognized escape sequence in string starting with "\o" 

Может ли кто-нибудь помочь мне с этим? Благодарю.

+2

попробовать 'GSUB («\\ о»,«», данные)' –

+0

спасибо @ Matthew Plourde –

ответ

3

Вам нужно бежать \ в ваш узор.

Попробуйте

gsub('\\o',' ',data) 
+0

Спасибо @Matthew и geektrader С вашей помощью я смог заменить '\ o' и '\ m', но теперь я получаю сообщение об ошибке от JSON (datafixed2): неожиданный символ: p " datafixed3 <- gsub ('\\: p', '', datafixed2) fbData <- fromJSON (datafixed3) Ошибка inJSON (datafixed3): неожиданный символ: p –

+0

fbData <- fromJSON (данныеfixed6) Erro em изJSON (данныеfixed6): неожиданный персонаж: p –

1

Вы могли бы сделать

fbData <- fromJSON(data,unexpected.escape = "keep") 

вы увидите предупреждение

Warning message: 
In fromJSON(individual_page, unexpected.escape = "keep") : 
unexpected escaped character '\m' at pos 10. Keeping value. 

, если вы хотите, вы можете подавить предупреждение с помощью

suppressWarnings(fromJSON(data,unexpected.escape = "keep")) 

surprise.escape: изменена обработка неожиданных экранированных символов. Величина обработки должна быть одной из «ошибок», «пропустить» или «сохранить»; на неожиданных персонажей выдаст ошибку, пропустить символ, или сохранить характер

Вы можете найти более подробную информацию здесь - http://cran.r-project.org/web/packages/rjson/rjson.pdf

Смежные вопросы