お久しぶりです。最近思いっきりサボっておりました中村です。
今回は、先日リリースして以来未だ結構な人気拡張機能となっている「Antenna Skipper」に続き、自作Chrome拡張機能シリーズ第二弾ってことで「BUZZ RANKER」のご紹介…というか作ったよレポと構造解説となります。
気になる!けど意外と調べにくい「ライバルサイトの個別記事SNSシェア数」
別にメディアとかコンテンツマーケとか、そっち系に限った話では無く、それこそSEO関連とかマーケ畑の人だって気になると思うんですよね。
『○○系ワードで人気のコンテンツってどんなんだ?』とかその辺の情報。
で、これまでってそういう事調べようと思うと結構大変だったんです。
自力でアンテナを多方面に張ってFacebookやはてブ、ツイッター、RSS、キュレーション系サービス・アプリなんかで頑張ったり。それだけじゃ情報が足りずGoogleで似たようなワードでアレコレ検索 ⇒ 各ページのSNSシェア値を個別に確認…の繰り返し…。てな具合で。
なので「Googleの検索結果に各種SNSシェア数を強引に出すChrome拡張機能」を作ってみた
BUZZ RANKER(バズランカー)
はい。というわけでまたしても作ってしまいました。Googleの検索結果リストに強引に各種SNSのシェア値を差し込んでいい感じに表示してくれるChrome拡張機能「BUZZ RANKER(バズランカー)」です。
スイッチ付きの半常駐型になっていて、使いたい時だけアイコンをクリックすれば動作開始!いつものGoogle検索結果にFacebookシェア数とかツイッターのツイート数、はてブの数とかをいい感じに出してくれます。(活性/非活性切り替え後はリロードしてね)
※連続で使用するとたまにAPIが反応しなくなったりするので、0値で返ってきてしまった場合は数分程度おいてからリロードしてみてください。
ちょっと便利な使い方例
Googleの検索機能と合わせて使うと、ライバルサイトのSNS指標をまるっと閲覧できたりするので割と重宝します。
例えば検索窓に『site:https://bita.jp/blog/』と入れて検索すれば、https://bita.jp/blog/ 配下のコンテンツ一覧がSNSのシェア数とセットで見れてしまうんです。
1ページづつ見ていくしかなかった今までに比べれば、かなりラクになるんじゃないかなーと。
ざっくりとした仕組みの説明
さて今回のExtensionですが、実は元ネタがあったりします。一部界隈では既に結構な知名度を持っているTatsuo IkedaさんのGithub配布スクリプト「bookmarkhub」です。
恐れ多くも「Chromeの拡張機能としてちょっと機能追加しつつ改造&リリースしていいすか?」と聞いてみたところ、ものすごい気楽に「いいっすよー!」と言っていただけましたので、ありがたくChrome拡張機能用カスタムベースとして使わせてもらいました。
中身でやってることと仕様は以下の通り
- Google検索のDOMを解析 ⇒ リンク先のURLを取得
- 取得したURLを各SNSのAPIに投げて返り値をJSで取得
- 検索結果のURL横あたりに各SNSのシェア数をねじ込み表示
はい。非常にシンプルですがまぁこんな感じです。
で、これをいっぺんにやってしまうと検索結果の表示に十数秒とか分けわかんない時間がかかってしまうので、一旦各指標を0のまま表示 ⇒ そのあと非同期で各APIの返り値を表示していく。みたいな構造にしてあります。
普段からアンテナ張ってたい人は入れっぱなしでアイコン非表示。とかにしといてもいいかもしれませんね。なんだかんだ役に立ちますよ。こいつ。
ちなみにFirefoxでの実装方法は?
Firefoxでも使いたい!という場合は、元祖Tatsuo IkedaさんのスクリプトをGreasemonkeyでぶっこむのがベター。GreasemonkeyのAdd-onsを追加して、UserScriptとして追加して動かしてみてください。
元ネタ提供のTatsuo Ikedaさん、エンジニアの國井さんサンクスでしたー!