Facebookのイイねされた数をURLを指定して取得する

技術関係

何か作るのは面倒くさいので、手元の環境で適当に取得できるようにしてみる。
※ Facebookのことなので、これがいつまで使えるかは謎

FacebookのGraph APIを使ってイイね数を取得する

どうやら、idにURLを指定してやればイイねに関する情報がJSON取得できる様子。かんたん

$ curl -s “http://graph.facebook.com/?id=http://www.atyks.org/

{
"og_object": {
"id": "10150302610415731",
"description": "ChangeLogに書き留めた覚書など",
"title": "そうだ車輪と名づけよう 5th",
"type": "article",
"updated_time": "2016-01-18T07:42:05+0000"
},
"share": {
"comment_count": 0,
"share_count": 1
},
"id": "http://www.atyks.org/"
}

この内、share_countがイイね数らしい。ので、この時点で目標は達成。後は必要なだけリクエストすればOK

jqを使って変換する

上では結果のJSONを見るのにjq コマンドを使って整形している。

実際に叩いたURLは以下
$ curl -s “http://graph.facebook.com/?id=http://www.atyks.org/” | jq

これだと不要な情報も取得できてしまうので、必要最低限のみを切り出してみる

$ curl -s “http://graph.facebook.com/?id=http://www.atyks.org/” | jq ‘{“id”: .id, “count”: .share.share_count}’

{
"id": "http://www.atyks.org/",
"count": 1
}

数字だけ欲しいならこんな感じ
$ curl -s “http://graph.facebook.com/?id=http://www.atyks.org/” | jq ‘.share.share_count’

1
タイトルとURLをコピーしました