使用R从Instagram API读取JSON字符串的最佳方法

时间:2014-08-15 21:25:17

标签: json r api instagram

到目前为止我尝试了不同的方法,包括fromJSON(readLines(url),unexpected.escape="keep")fromJSON(getURL(url),unexpected.escape="keep")。 我现在偶然发现的是,如果我的请求如下:

url = "https://api.instagram.com/v1/users/142121981/?client_id=****************************" (填写你的clientid)结合readLines(),这对我来说效果更好,我收到了错误:

Error in file(con, "r") : cannot open the connection
In addition: Warning message:
In file(con, "r") : cannot open: HTTP status was '400 BAD REQUEST'

如果您在浏览器中打开此URL,则仍会获得JSON字符串:

{"meta":{"error_type":"APINotFoundError","code":400,"error_message":"this user does not exist"}}

告诉我,具有此ID的用户不存在。

我想要的是readLines()的替代方案,它仍会读取此JSON字符串而不是抛出错误。

希望这是足够的解释!如果没有问我任何你需要知道的事情!

2 个答案:

答案 0 :(得分:1)

感谢MrFlick的提示我潜入了httr包裹。 我(或最佳实践)的解决方案是使用

response = fromJSON(rawToChar(GET(url)))

即使用户不存在,也会返回一个R对象。

答案 1 :(得分:0)

我使用RCurl,httr& RJSONIO包和:

fromJSON(getURL()))