更新されなくなったサイトを中心に140→90に減らしました。
はてなアンテナお手軽メンテナンス法を以下にまとめます。
次の手順で行います。
(1)はてなアンテナのLIRS形式データテキストをダウンロード。
(2)ダウンロードしたテキストを編集。
(3)編集したテキストをはてなアンテナに反映させる。
(1)w3mやwgetなどでLIRS形式のテキストをダウンロードする
w3m "http://a.hatena.ne.jp/あなたのアカウント/source?mode=lirs&k=" | sort -nr -t , +1 > hatena.txt
↓hatena.txtはこんなかんじです。
LIRS,1095490469,1095490469,32400,,http://bm.ishinao.net/,blogmap,,http://a.hatena.ne.jp/,,
LIRS,1095488563,1095488563,32400,,http://www.watch.impress.co.jp/,impress Watch Headline,,http://a.hatena.ne.jp/,,
LIRS,1095488198,1095488198,32400,,http://news.google.co.jp/,Google News,,http://a.hatena.ne.jp/,,
(2)エディタでアンテナから削除したい行を消す。
消したいサイトを書くのではありませんので注意してください。
(3)はてなアンテナを更新する。
以下の処理にはperlのWWW::Mechanizeモジュールが必要です。
ActivePerlの場合
ppm.bat install WWW::Mechanize
でインストールできると思います。[2004-09-18-6]
UNIX系の人は普通にCPANでインストールしましょう。[2004-09-18-7]
スクリプトはアカウントとパスワードを適宜書き換えて使用してください。
またいったんアンテナを消去しますのでグループ分けは無効になってしまいます。
↓一行であらわすとこれです。それぞれの処理は(3-1)(3-2)(3-3)で説明します。
./hatena-delete-all.pl;./lirs2url.pl < hatena.txt | ./hatena-add.pl
(3-1)はてなアンテナをクリアする。
はてなアンテナをクリアするには
http://www13.ocn.ne.jp/~tokuhiro/cl/2004-09-02.html#2004-09-02-9
↓hatena-delete-all.pl
#!/usr/bin/perl
use strict;
use WWW::Mechanize;
my $account = 'あなたのアカウント';
my $password = 'あなたのパスワード';
my $start = 'http://a.hatena.ne.jp/login';
my $mech = WWW::Mechanize->new();
$mech->agent_alias('Windows IE 6');
$mech->get($start);
$mech->form_number(2);
$mech->field(key => $account);
$mech->field(password => $password);
$mech->click();
$mech->follow_link(url_regex => qr/\.\/edit/);
while (1) {
print STDERR '.';
my @forms = $mech->forms();
my $len = @forms;
if ($len<=3) {
exit;
}
$mech->form_number(3);
$mech->click();
}
(3-2)hatena.txtからURLのリストを作成する。
./lirs2url.pl < hatena.txt
↓lirs2url.pl
#!perl
use strict;
while(<STDIN>){
split ',';
print "@_[5]\n";
}
(3-3)はてなアンテナに一括登録する。
はてなアンテナに一括登録
http://www13.ocn.ne.jp/~tokuhiro/cl/2004-09-02.html#2004-09-02-5
↓hatena-add.pl
#!/usr/bin/perl
use strict;
use WWW::Mechanize;
my $account = 'あなたのアカウント';
my $password = 'あなたのパスワード';
my $start = 'http://a.hatena.ne.jp/login';
my $mech = WWW::Mechanize->new();
$mech->agent_alias('Windows IE 6');
$mech->get($start);
$mech->form_number(2);
$mech->field(key => $account);
$mech->field(password => $password);
$mech->click();
$mech->follow_link(url_regex => qr/\.\/edit/);
while (<>) {
my $url = $_;
print $url;
chomp($url);
$mech->form_number(2);
$mech->field(pageurl => $url);
$mech->click();
}
print $mech->content();
固定リンク [2004-09-18-2]
これまでの訪問者は 人です。