FacebookのGraphAPIについて質問です。


当方GraphAPIを用いた開発経験がなく、初歩的な内容かもしれませんが、質問させて頂きます。
GraphAPI経由で、どのユーザーがどのfacebookページに「いいね」をしているか収集したいと思っています。下記のようなイメージです。
・Aさん⇒「ページA」「ページD」
・Bさん⇒「ページB」「ページC」「ページD」
・Cさん⇒・・・
(クローリングにより収集)

この目的に際して、下記のようなことは可能でしょうか?
1.ユーザー(ID)を指定して、そのユーザーが「いいね」しているfacebookページを取得する。
2.特定のカテゴリ(例えば「映画」など)のfacebookページのみを取得する。
3.自分の友達以外の「いいね」情報を取得する。(公開されているもの)

上記が可能な場合、サンプルや参考ページなども一緒に示して頂けますと有難いです。
どうぞよろしくお願い致します。

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2012/11/12 00:29:31
  • 終了:2012/11/19 00:30:05

ベストアンサー

id:Cherenkov No.1

Cherenkov回答回数1502ベストアンサー獲得回数4922012/11/18 05:22:02

ポイント100pt

簡易的にGraph APIエクスプローラ で確認できます。
user_likesのチェックを入れてアクセストークンを追加してから、
GET /me/likes/ を撃てば自分のいいねを確認することができます。
https://developers.facebook.com/tools/explorer?method=GET&path=me%2Flikes%2F

1. /ユーザーID/likes/ でそのユーザのいいねを全て取得できます。/ユーザーID/likes/PageID で個別のfacebookページのいいねを確認できます。
2. Graph APIエクスプローラでみてもらえばわかりますが、categoryの値でふるい分けすれば特定カテゴリだけを抽出できます。「"category": "Movie"」
3. friends_likes のパーミッションを有効にすれば友達のいいねも取得できるようです。
https://developers.facebook.com/docs/reference/api/user/#likes

他1件のコメントを見る
id:Cherenkov

3について勘違いしてました。「友達以外」なんですね。
アクセストークンが必要なのでアプリ自体の許可、user_likesパーミッションの許可は必要だと思います。
それらがそろっていれば、/ユーザーID/likes で取れるはずです。
まずは/自分のID/likesで確認してみるとか。
/me で自分のIDを取得してやってみればわかります。そのあと上のアクセストークンを削除するとデータが取れなくなります。

2012/11/18 23:20:43
id:Cherenkov

友達以外のいいねをどう使いたいのかわかりませんが、このあたりのソーシャルプラグインを使うのも手かもしれません。
Like Box - Facebook開発者 https://developers.facebook.com/docs/reference/plugins/like-box/

2012/11/18 23:23:39

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません