Voici un exemple du code que j'utilise:
library(jsonlite)
library(curl)
#url
url = "http://www.zillow.com/search/GetResults.htm?spt=homes&status=001000<=000000&ht=010000&pr=999999,10000001&mp=3779,37788&bd=0%2C&ba=0%2C&sf=,&lot=0%2C&yr=,1800&singlestory=0&hoa=0%2C&pho=0&pets=0&parking=0&laundry=0&income-restricted=0&pnd=0&red=0&zso=0&days=36m&ds=all&pmf=0&pf=0&sch=100111&zoom=6&rect=-91307373,29367814,-84759521,35554574&p=1&sort=globalrelevanceex&search=maplist&rid=4&rt=2&listright=true&isMapSearch=true&zoom=6"
#json
results_data_json = fromJSON(txt = url)
J'avais l'habitude de pouvoir exécuter un code similaire à celui-ci sans problème. Maintenant, j'obtiens l'erreur suivante:
Error in feed_Push_parser(buf) :
lexical error: invalid char in json text.
<html><head><title>Zillow: Real
(right here) ------^
Des idées à ce sujet?
Cela m'est arrivé en lisant un fichier json dans un fichier. Le code a fonctionné un jour, puis le lendemain, j'ai eu cette erreur. J'ai finalement réussi à contourner l'erreur même si je ne comprends pas pourquoi ma solution fonctionne. Tout d'abord, j'ai trouvé un article sur github qui suggérait d'ajouter la fonction readLines (). Par exemple.
r_object <- fromJSON(readLines("file.json"))
Quand j'ai fait cela, le json s'est chargé correctement mais j'ai reçu l'avertissement suivant:
Warning message:
In readLines("file.json") : incomplete final line found on 'file.json'.
Puis, sans raison particulière, j'ai essayé d'ajouter une ligne supplémentaire au bas du JSON. Juste une ligne vierge après le dernier crochet. Et cela l'a corrigé. Je ne sais pas pourquoi. Si quelqu'un sait pourquoi cela a fonctionné, veuillez laisser un commentaire.
Je ne peux pas non plus reproduire l'erreur.
class(results_data_json)
[1] "list"
Ma sessioninfo:
R version 3.3.2 (2016-10-31)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7600)
locale:
[1] LC_COLLATE=Spanish_Colombia.1252 LC_CTYPE=Spanish_Colombia.1252 LC_MONETARY=Spanish_Colombia.1252
[4] LC_NUMERIC=C LC_TIME=Spanish_Colombia.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] curl_2.4 jsonlite_1.1
loaded via a namespace (and not attached):
[1] tools_3.3.2