Scraping Comment回复Rfacebook

时间:2017-12-18 12:06:17

标签: r facebook-graph-api-v2.8 rfacebook

我正在使用Rfacebook包来抓取我的研究问题感兴趣的公共页面列表。认证工作正常,我可以获得所有公开帖子的数据框架,对帖子的反应以及对这些帖子的评论。

但是,当我尝试提取公开帖子下的评论回复时,我遇到了问题。这是我使用的代码:

BSBKB <-getPage("bersenbrueckerkreisblatt", token = my_OAuth, feed = TRUE, reactions = TRUE,verbose = TRUE, n = 1000)
#Getting comments for Post No.4
Comments <- getPost(BSBKB$id[4],token = my_OAuth, reactions = TRUE, n =180,likes=TRUE)
#Getting replies to comment No.4 under Post No.4
replies <- getCommentReplies(Comments$comments$id[4], token = my_OAuth, n = 500, replies = FALSE, likes= TRUE)

此代码抛出以下错误:

Error in data.frame(from_id = json$from$id, from_name = json$from$name,  : arguments imply differing number of rows: 0, 1

奇怪的是,当我尝试从?getCommentReplies()页面运行示例代码时出现相同的错误:

## Not run: 
## See examples for fbOAuth to know how token was created.
## Getting information about Facebook's Facebook Page
   load("fb_oauth")
   fb_page <- getPage(page="facebook", token=my_OAuth)
## Getting information and likes/comments about most recent post
   post <- getPost(post=fb_page$id[1], n=2000, token=my_OAuth)
## Downloading list of replies to first comment
   replies <- getCommentReplies(comment_id=post$comments$id[1], token=my_OAuth) 
## End(Not run)

导致:

Error in data.frame(from_id = json$from$id, from_name = json$from$name,  : 
  arguments imply differing number of rows: 0, 1

这是一个系统错误的包,最近的API更改或我在某处犯了错误?关于如何解决这个问题以及提取评论回复(以及理想的反应)的任何建议都会很棒!

1 个答案:

答案 0 :(得分:2)

函数getCommentReplies的源代码发布在Github上:https://github.com/yanturgeon/R_Script/blob/master/getCommentReplies_dev.R

在您自己的环境中重新加载此代码,但在执行此操作之前,请注释掉该行:

out[["reply"]] <- replyDataToDF(content)

效果仍然是列表,而不是数据帧。