個人的には
テキストファイルがデータ本体であり、フレーバと呼ばれるレンダラによってブログエントリ化する。バックアップしたいなら、テキストファイルをアーカイブすればいいし、記事を消したいならば、そのテキストファイルを消せばいい。って所が好きで、実はこのサイトを作る前から、自分専用のメモシステムとして使ってました。
テキストファイルがデータ本体であり、フレーバと呼ばれるレンダラによってブログエントリ化する。バックアップしたいなら、テキストファイルをアーカイブすればいいし、記事を消したいならば、そのテキストファイルを消せばいい。って所が好きで、実はこのサイトを作る前から、自分専用のメモシステムとして使ってました。
livedoor FeedFetcher/0.01 (http://reader.livedoor.com/; 23 subscribers) ...
#!/usr/bin/perl
use strict;
my $logfile = "/blosxom/logs/access.log";
#my $logfile = "access.log";
my %agents;
my %bot_ua = (
'Hatena' => 'Hatena\x20RSS',
'NewsAlloy' => 'NewsAlloy',
'FreshReader' => 'FreshReader',
'Feedpath' => 'Feedpath',
'Google Reader' => 'Feedfetcher-Google',
'Rojo' => 'Rojo',
'Bloglines' => 'Bloglines',
'Livedoor Reader' => 'livedoor\x20FeedFetcher',
);
open(FILE, "<$logfile");
while(<FILE>) {
my $line = $_;
$line =~ s/^([^\t]+\t){2}([^\t]+)\t.*/\2/;
if ((my $ua) = grep {$line =~ /$bot_ua{$_}/} keys(%bot_ua)) {
$line =~ s/^.* ([0-9]+) subscriber.*\n$/\1/;
$agents{$ua} = $line if ($agents{$ua} < $line);
}
}
close(FILE);
print <<EOF
Content-Type: text/html;
<html>
<head><title>Your Feeds Subscriber</title><head>
<body>
<table border=\"1\">
EOF
;
my $sum = 0;
while(my ($key, $value) = each(%agents)) {
print "<tr><td>$key</td><td>$value</td></tr>\n";
$sum += $value;
}
print <<EOF
<tr><td>total</td><td>$sum</td></tr>
</table>
</body>
</html>
EOF
;
このブログを応援する