2011-12-15 5 views
1

Graph Facebook APIを使用して、特定のキーワードに関連するすべての公開コンテンツを検索しようとしています。FacebookソーシャルグラフAPI検索を使用してコメント数とコメント数を調べる方法は?

https://graph.facebook.com/search?q=obama&type=post 

私は期待どおりの結果を得ましたが、最近、特定の結果に関するコメント数と個々のコメントのリストも検索したいと思います。

これは、上記のAPI呼び出しの出力例です:

{ 
    "id": "1372608125_2297171713409", 
    "from": { 
     "name": "xxxx", 
     "id": "1372608125" 
    }, 
    "message": "Originaly posted by:Anthony McMahan\n\n Political breakdown time....\n \nToday is short one, here is some information that will floor you if you werent aware of it yet. The United States of America makes approximately 15 trillion dollars annually GDP. Our debt has recently tipped over 15 trillion in recent days. So we now owe more than we make in a year. \n\nTo further add to the fury, medical facilities in the USA account for 1/6 of our GDP, so about 2.5 trillion dollars are brought in from hospitals across the US. the new healthcare bill is a stretch for the givernment to take control of all medical facilities in the US, which would basically cancel out 1/6 of our income as the healthcare would be made available to everyone. Therefore in light of the US being in more debt than we could make in a year, the plan is to take away 1/6 of our ability to make money. Imagine being in credit card debt and having to take a pay cut at work, because you chose to work in the mailroom instead of a cubicle. thats what is going on here in allegory. i would just like to take this time to say, \"thank you mr obama for making this country a laughing stock in the eyes of all our enemies and foreign nations, you'd make Karl Marx and Vladimir Lenin all too proud.\" \n\nUntil tomorrow........", 
    "type": "status", 
    "created_time": "2011-12-15T06:02:51+0000", 
    "updated_time": "2011-12-15T06:02:51+0000" 
    } 

は、私がコメントやそのポストに関連するコメントのリストの番号を見つけたいとします。別のAPI呼び出しを使用する必要がありますか?
別のAPIを呼び出すことなく、「Graph API search」内のコメントの数を直接知ることはできますか?投稿にコメントがある場合はコメントのリストを取得するために別のAPIを実行します。そうでなければ追加のAPI呼び出しを実行する必要はありません。

私は、次のAPI呼び出しを実行する必要があり、個々のコメントの一覧を取得するために知っているように:

http://graph.facebook.com/1372608125_2297171713409/comments 

は正しい方法がそうすることですか?ここでは、その投稿に実際にコメントがあるかどうかは手がかりも得られません。

私は実際のGoogle+のAPIがどこつの検索API呼び出し内で、私は次のような回答(コメント)の数を取得することができているのと同様の機能を得ることを期待している:

"replies": { 
"totalItems": 53, 
"selfLink": "https://www.googleapis.com/plus/v1/activities/z13rhfhjzzm4ztrnt22kwpgglsrjdfra504/comments" 
}, 

答えて

0

はい、投稿ごとに2番目のAPI呼び出しを使用する必要があります。

別のAPIを呼び出すことなく、「グラフAPI検索」内のコメントの数を直接知ることはできますか?投稿にコメントがある場合はコメントのリストを取得するために別のAPIを実行します。そうでなければ追加のAPI呼び出しを実行する必要はありません。壁やフィードを読み込むとき

通常、あなたがどのように多くのコメント(/me/feed?fields=commentsを試してみてください)を教えてくれます各ポストのcommentsフィールドを要求することができます。何らかの理由で検索APIで利用できないようで、コメントフィールドをリクエストするとAPIからエラーが返されます。

記事にコメントを要求する正しい方法は確かです:

http://graph.facebook.com/1372608125_2297171713409/comments 

あなたが戻って、空のリストを取得した場合、コメントはありません。それ以外の場合は、コメントのリストが表示されます。これを確認する方法は、使用している言語によって異なります。コメントはありませんとポストについては、データが返された生のJSONは、次のようになります。非常にアクティブなページ上の

{ 
    "data": [] 
} 

投稿は、コメントの数千人を持つことができ、あなたがの束を得るためにlimitパラメータを指定することもできますので、あなたがそれらの多くを打つことを計画している場合時のコメント:未満千のコメントがある場合は

http://graph.facebook.com/1372608125_2297171713409/comments?limit=1000 

、あなたはこのバック一度にそれらすべてを取得します。

+0

今、私はこれが検索結果からコメントを得る唯一の方法だと確信しています。 FBは検索結果から直接コメントを表示するオプションを削除したようだ。このAPIコールは動作します:https://graph.facebook.com/search?q=watermelon&type=post&fields=comments,message –

0

あなたの最善の策は、最もありスレッドのコメント数(ある場合)を取得するコメントの数をカウントしてコードを実行する可能性があります。残念ながら、これを行うには、/ id/commentsの呼び出しを行う必要があります。私は追加のAPI呼び出しでこれを達成する方法を知らない。

+0

:-)試してみるべきですか?私は/ id/commentsの呼び出しを使用しようとしましたが、それは私に空の結果を与えます。これは、投稿にコメントがないことを意味しますか? –

+0

はい。/id/commentsが空の結果を返す場合、投稿は空です。コーディングする言語の関数を使用して、この呼び出しによって返される結果の数を確認することができます。 0と書いてあれば、コメントはありません。ありがとう。 –

+0

私はまだコメントがない投稿の不必要なチェックを排除することができる他の解決策を待っています。ありがとうございます。 –

1

もっと簡単な方法は、いわゆる「バッチリクエスト」を使用することです。一度に複数のGraph APIリクエストを実行し、リクエスト間の依存関係を定義してみましょう。完全なドキュメントはhereです(ビットを下にスクロールして「要求内の操作間の依存関係を指定する」必要があります)。

最初のリクエストは検索結果であり、2番目のリクエストは各検索結果のコメントを取得するために各結果のグラフIDを使用した最初の呼び出しの結果に依存します。

私はまだ依存バッチ要求で働いていないが、あなたはそれをAPIコールはコメントの数を返します

+0

残念ながら、私はグラフAPIを通じて公開情報を要求していますが、バッチリクエストは常にアクセストークンを要求します –

+0

あなたの質問には情報がありませんでした;-) –

+0

ええ、私はFBからのパブリック情報の要求にはアクセストークンを必要としないと仮定します。私は私の質問でコード内にアクセストークンを使用していません。私が賞金を分け合う機会があれば、私は前にこのバッチリクエストについて知らなかったので、あなたにそれを渡します。これはFB APIを初めて使用する私のアプリケーションのほんの一部です。だから、私はアクセストークンを使って複雑にしたくありません。 –

関連する問題