
自分のサイトの合計はてブ数を淡々と csv に記録し続ける2009-07-16
Twitter ボットの作り方 Perl 編 連載中ですが、ちょっとお休みして、さっき思い立って書いたスクリプトを紹介します。
最近、TopHatenar の更新が止まってしまっていて悲しいので、自分のサイトのトータルはてブ数を記録して、自分でグラフを書くことにしました。
といっても、自分が見る専用で問題ないので、csv を出力しておくだけです。適宜 Excel とかで加工してグラフ化します。
まず必要になる CPAN モジュールをインストールします。root 権限必須です。
XMLRPC::Lite は自分の環境だとテストで引っかかって上手く入らなかったので、force install してます。
force install する前に、通常の install で入れられないかを試すべきです。
いずれのインストールも結構時間がかかるので、原則放置でたまに Enter を押してやる感じです。
実際のスクリプトは下記のような感じです。
標準出力に吐くようにしたので、ファイルに記録したい場合は任意にリダイレクトしてやります。
$url の値はカウント対象の URL ですが、もちろん変更して下さい。
スクリプトに実行権限を与えて実行すると、こんな感じの出力が出てきます。
毎日の記録を残すのであれば、例えば下記のように cron に登録すればいいです。
今のところ日次で記録する前提で日付しか出力していませんが、はてブ数が多くもっと頻繁に記録するのであれば、出力を下記のように変える事で実行時間も記録されます。
最初に自分専用とはいったものの、いったん csv に落としてしまえば、PHP + Google Chart API でグラフ化して Web から見れるようにするとかもありですね。
最近、TopHatenar の更新が止まってしまっていて悲しいので、自分のサイトのトータルはてブ数を記録して、自分でグラフを書くことにしました。
といっても、自分が見る専用で問題ないので、csv を出力しておくだけです。適宜 Excel とかで加工してグラフ化します。
まず必要になる CPAN モジュールをインストールします。root 権限必須です。
$ su - # cpan cpan> force install XMLRPC::Lite cpan> install DateTime
XMLRPC::Lite は自分の環境だとテストで引っかかって上手く入らなかったので、force install してます。
force install する前に、通常の install で入れられないかを試すべきです。
いずれのインストールも結構時間がかかるので、原則放置でたまに Enter を押してやる感じです。
実際のスクリプトは下記のような感じです。
標準出力に吐くようにしたので、ファイルに記録したい場合は任意にリダイレクトしてやります。
#!/usr/bin/perl use strict; use warnings; use XMLRPC::Lite; use DateTime; my $url = 'https://www.otchy.net'; my $count = XMLRPC::Lite ->proxy('http://b.hatena.ne.jp/xmlrpc') ->call('bookmark.getTotalCount', $url) ->result; my $now = DateTime->now(time_zone => 'Asia/Tokyo'); print $now->strftime('%Y-%m-%d') . ',' . $count . "\n";
$url の値はカウント対象の URL ですが、もちろん変更して下さい。
スクリプトに実行権限を与えて実行すると、こんな感じの出力が出てきます。
2009-07-16,204
毎日の記録を残すのであれば、例えば下記のように cron に登録すればいいです。
00 00 * * * /home/your_id/hatebulog/hatebulog.pl >> /home/your_id/hatebulog/hatebulog.csv
今のところ日次で記録する前提で日付しか出力していませんが、はてブ数が多くもっと頻繁に記録するのであれば、出力を下記のように変える事で実行時間も記録されます。
print $now->strftime('%Y-%m-%d %H:%M:%S') . ',' . $count . "\n";
最初に自分専用とはいったものの、いったん csv に落としてしまえば、PHP + Google Chart API でグラフ化して Web から見れるようにするとかもありですね。
追記(2009-08-04)
グラフ化してみました!カテゴリ: Development タグ: はてブ perl