feed meter のランキングを定点観測する Perl スクリプト

Posted by
ぴろり
Posted at
2008/08/31 15:24
Trackbacks
関連記事 (0)
Post Comment
コメントできます
Category
ソフトウェア カテゴリ

 feed meter での現在のランキングを定点観測してログに書き出す Perl スクリプトです。「順位の変動が気になって眠れないんだぜ」という自意識過剰な人にオススメです。

この記事を Delicious に追加する   このエントリーをはてなブックマークに追加  

 $url で定義されている URL を自分のブログのフィードに書き換えて御利用ください。スクリプトの文字コードは EUC-JP で保存してください。ランキングの更新は毎日深夜に行われているようなので、朝方に一度だけ実行すれば事足りますので cron やタスクで回すなどしてください。Web::Scraper は使うまでもなかった。

#!/usr/bin/perl
# feed meter のランクと人気度を定点観測するスクリプト

use strict;
use LWP::UserAgent;

my $url = 'http://feedmeter.net/detail.php?r=http://www.magicvox.net/index.rdf';

my $logfile = './feedmeter.log';



### Initialize
my $ua = new LWP::UserAgent
    or die "Failed to initialize LWP::UserAgent";
$ua->agent( "Mozilla/4.0" );

### Retrieve the content
my $res = $ua->get( $url )
    or die "Failed to retrieve $url (1)";
$res->is_success
    or die "Failed to retrieve $url (2)";

###
my $buf = $res->content
    or die "No content";
my( $rank ) = $buf =~ m!">&amp;lt;&amp;lt;</a> (d+)位 <a href="detail.php?r=!;
my( $rate ) = $buf =~ m!<td nowrap width="75%">([d.]+)</td>!;

###
if( open( my $fh, ">>$logfile")) {
    my @t = localtime time;
    $t[5] += 1900;
    $t[4] += 1;
    printf $fh "%4d/%02d/%02d %02d:%02dt%dt%s
", $t[5],$t[4],$t[3], $t[2],$t[1], $rank,$rate;
    close $fh;
}
この記事を Delicious に追加する   このエントリーをはてなブックマークに追加  



関連記事/トラックバック

関連記事/トラックバックはまだありません

この記事にトラックバックを送るには?

コメントを投稿する

 
 (必須, 匿名可, 公開, トリップが使えます)
 (必須, 匿名可, 非公開, Gravatar に対応しています)
 (必須)
スパム コメント防止のため「投稿確認」欄に ランダムな数字 CAPTCHAについて を入力してから送信してください。お手数ですがご協力のほど宜しくお願いいたします。