2006年03月03日

2ちゃんねるのスレッドを簡単に取り扱うWWW::2chをCPANにageました。
WWW-2ch-0.04

・ローカルにあるdatをパースするメソッドの追加
・キャッシュされているdatを取り出すメソッドの追加
・各プラグインで利用するサイトのencodeの取得
・Jbbsのサポート

などが追加されています。他にも痒いとこに手が届きそうなものも追加してます。
上2つはサーバに接続をせずに手元のデータだけを使用しているので
一度取得したdat等を後でデータマイニングしたい場合に有効になります。
ただしhttp://www.2ch.net/

2ちゃんねるのデータの利用に関して、原則的に自由ですが、 2ちゃんねるのデータ自体を利用して対価を取る行為はご遠慮下さい
には注意してくださいです。

各種データをサーバから取ってくるときも極力余計な通信を発生させないように注意してますが

  foreach my $dat ($bbs->subject->threads) {
$dat->load;
my $one = $dat->res(1);
print $dat->title . "\n";
print '>>1: ' . $one->body;
foreach my $res ($dat->reslist) {
print $res->num . ':' . $res->date . "\n";
print $res->body_text . "\n";
}
}
こんなコードを動かすとサーバの負担は計り知れないですしip banされますので注意してください。

WWW::2ch::Cache::Fileを使わずに別のストレージを使えば、スレッド検索なんかも実装できそうです。
簡易ビューワーとかも楽に作れます。

Jbbsは

my $bbs = WWW::2ch->new(url => 'http://jbbs.livedoor.jp/hogehoge/hogehoge/',
cache => '/tmp/cache', plugin => 'Jbbs');
な感じで使えます。

Plugin例やCookBook的なものは後で書きます。

Posted by Yappo at 2006年03月03日 20:50 | TrackBack | Perl
Comments

バイク板からきますた。
WWW::2ch の話題はこの日記でいいのかな・・・?
ローカルのdatをparse_datで食わした場合って $dat->title でtitleが取れないのは仕様ですか?
subject.txtから引っ張ってきてるのかなーと、load_subjectしてみても駄目でした。(まだ落ちてないスレ)

Posted by: 774RR at 2006年11月17日 15:34
Post a comment









Remember personal info?






コメントを投稿する前に↓の場所にnospamと入力してください。