宮川達彦、 伊藤直也 著 『Blog Hacks - プロが教えるテクニック & ツール100選』 に寄稿した記事の元の原稿です。
要約: はてなアンテナの「○○○を含む公開アンテナ」を見る機能を利用 して、ブログの人気調査を行います。
はてなアンテナ には「○○○を含む公開アンテナ」を見る機能が あります。たとえば本書の著者の一人である伊藤直也のブログ NDO::Weblog を登録している公開アンテナをチェックするには
http://a.hatena.ne.jp/include?http://naoya.dyndns.org/~naoya/mt/
という URL ではてなアンテナにアクセスします。
本ハックではこの機能を使って、はてなアンテナでの人気を自動で 調べる方法を紹介します。
まず url.txt というテキストファイルに、人気を調べたいブログ サイトの URL を 1行につき 1つづつ記述します。
url.txt の例:
http://blog.bulknews.net/mt/ http://nais.to/~yto/clog/ http://naoya.dyndns.org/~naoya/mt/
このような url.txt を用意して、Unix のコマンドプロンプト (Windows な ら Cygwin のコマンドプロンプト) から次のようなワンライナーを実行します。 はてなアンテナからのデータの取得には w3m を利用しているた め、あらかじめインストールしておく必要があります。
% cat url.txt | while read url; do \ count=`w3m -dump_source "http://a.hatena.ne.jp/include?$url" |\ grep -c '<li>'`; echo "$count $url"; sleep 3; done | sort -nr
現行執筆時点での実行結果は以下のようになりました。 実行結果はアンテナへの登録数の多い順にソートされています。
112 http://naoya.dyndns.org/~naoya/mt/ 102 http://nais.to/~yto/clog/ 92 http://blog.bulknews.net/mt/
この結果から、 NDO::Weblog は、112 もの公開アンテナに登録さ れていることがわかります。もっと人気のあるブログサイトでは 500 ものアンテナに登録されているものもありました。
Hacking the Hack
さて、本ハックでは w3m を使って、はてなアンテナから HTML のデータを入手して、中に含まれる <li> というタグを数え るだけという安直な手法を用いています。このため、
- はてなアンテナに機械的にアクセスするため、はてなのサーバ に負荷をかけすぎる恐れがある。これを回避するために "sleep 3" を入れて 1アクセスごとに 3秒休むようにしていますが、それでも 実行は控え目にした方がいいでしょう。
- <li>を数えているだけなので、はてなの HTML の記述が変化す ると、使えなくなる。
といった問題があります。本ハックでは、はてなアンテナへの登録 数を数えるというやり方でブログの人気度を測ってみましたが、bulkfeeds のデータを利用す るなど、もっと別のやり方でブログの人気度を測る方法を考えてみ るのもおもしろいと思います。人気度を偏差値として計算すること もできるかもしれません。
