2017-03-10 22 views
0

特定のfbページのすべてのコメントにアクセスしようとしていますgetPost関数。私は以下のエラーが発生しています。どうすればこの問題を解決できますか?ありがとうcallAPI(url = url、token = token)のエラー:(#100)ノードタイプ(ページ)で存在しないフィールド(から)にアクセスしようとしました

library(Rfacebook) 
load("fbauthentication") 

date1<-Sys.Date()-7 
date2<-Sys.Date() 

MaybellineUS<-getPage(page="Maybelline",token=authentication,n=100,since=date1,until=date2,feed=TRUE) 
df <- data.frame(from_id=character(),from_name=character(),message=character(),created_time=character(), 
       likes_count=numeric(),comments_count=numeric(),id=character(),stringsAsFactors = FALSE) 
i <- 1 
while(i<=length(MaybellineUS)){ 
    x<- getPost(post=MaybellineUS$id[i],n=500,token =authentication) 
    df<-rbind(df,x[['comments']]) 
    i<-i+1 
} 

Error in callAPI(url = url, token = token) : 
    (#100) Tried accessing nonexisting field (from) on node type (Page) 
+0

実行しているコードが完全に不明です。あなたに役立つように[再現可能な例](http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)を用意してください。 – MrFlick

答えて

0

私はRfacebookパッケージで同じ問題がありました。これは、最初の呼び出し(getPage)がAPIからいくつかのNAフィールドを返すためです。したがって、2番目の呼び出し(getPost)が誤って形成されます。エラーを防ぐために、このようなif文であなたの2番目の呼び出しをラップ:

i <- 1 
while(i<=length(MaybellineUS1)){ 
if (!is.na(MaybellineUS1$id[i]) { 
x<- getPost(post=MaybellineUS1$id[i],n=500,token =authentication) 
df<-rbind(df,x[['comments']]) 
i<-i+1 
    } 
} 

EDIT: また、私はあなたの例では、あなたのトークンが「fbauthentication」ではなく、「認証」されるべきだと思います。

関連する問題