我正在尝试使用下面显示的代码从json文件提取数据。 但是,返回以下错误:
Error: lexical error: invalid bytes in UTF8 string.
fr":"Ces données sont publiées avec un délai de cinq jours
(right here) ------^
在浏览器中检查json文件后,数据显示如下:
"fr":"Ces donn\u00e9es sont publi�es avec un d\u00e9lai de cinq jours."
有没有一种方法可以在忽略任何导致错误的UTF8字符串的同时写入数据?
library(jsonlite)
URL <- paste0("https://www.energy-charts.de/power_unit/month_lignite_unit_2017_12.json")
data <- fromJSON(getURL(URL))
答案 0 :(得分:0)
问题在于URL以latin1
编码返回数据,并且您的系统默认将其读取为UTF-8。您可以使用
library(jsonlite)
library(RCurl)
URL <- "https://www.energy-charts.de/power_unit/month_lignite_unit_2017_12.json"
data <- fromJSON(getURL(URL, encoding = "latin1"))
我还纠正了您的代码中的一些小错误:您忘记了请求RCurl
,并且不需要paste0
。