我正在尝试通过 R 流式传输和保存公共帖子。我已经获得了令牌并进行了搜索。这就是我所做的。
要求(RCurl)
要求(rjson)
数据 <- getURL(" https://graph.facebook.com/search?q=multishow&type=post&access_token=my_token ")
没关系,“数据”角色找到了一些东西。现在,如何将这个“数据”字符转换为数据框?是否可以在特定超时期间流式传输此搜索?
谢谢。
更新:
好的,现在我可以解析来自 Facebook 的 JSON 结果,但我仍然坚持正确地转换为 data.frame 并流式传输以获取新帖子。按照下面的代码:
library (RCurl)
library (rjson)
library (plyr)
data <- getURL("https://graph.facebook.com/search?q=my_query&type=post&access_token=my_token, cainfo="cacert.perm")
#JSON parser
parser <- newJSONParser()
parser$addData(data)
fb.data <- parser$getObject()
#JSON to data.frame
#sometimes it works direct from rjson
df <- data.frame(fromJSON(fb.data))
#sometimes it works only with plyr package
df <- do.call("rbind.fill", lapply(fb.data, as.data.frame))
无论哪种方式,我都会得到一个带有 1 或 2 个观察值和数百个变量的 data.frame。我做的最后一次搜索,我得到了我的第一个观察值,有 42 个变量,第二个有 13 个变量,依此类推。我该如何处理它的任何线索?