我正在使用R包rjson
从Wunderground.com下载天气数据。我经常让程序运行,没有问题,数据收集得很好。但是,程序通常会停止运行,并收到以下错误消息:
Error in fromJSON(paste(raw.data, collapse = "")) : unclosed string
In addition: Warning message:
In readLines(conn, n = -1L, ok = TRUE) :
incomplete final line found on 'http://api.wunderground.com/api/[my_API_code]/history_20121214pws:1/q/pws:IBIRMING7.json'
有没有人知道这意味着什么,以及如何避免它,因为它阻止了我的程序收集数据,我希望如何?
非常感谢,
本
答案 0 :(得分:2)
我可以使用rjson
包重新创建您的错误消息。
这是一个有效的例子。
rjson::fromJSON('{"x":"a string"}')
# $x
# [1] "a string"
如果我们从x
的值中省略双引号,那么我们会收到错误消息。
rjson::fromJSON('{"x":"a string}')
# Error in rjson::fromJSON("{\"x\":\"a string}") : unclosed string
RJSONIO
包的行为略有不同。它不是抛出错误,而是静默地返回NULL
值。
RJSONIO::fromJSON('{"x":"a string}')
# $x
# NULL