Xango and crawler

クローラを作る必要に迫られているので、Crawler Framework の Xangoや、crawlerを試してみたり。
POEを全然使ったことがないせいか、Xangoのほうは最初付属のPODを呼んでも全然分かんなかったんだけど、そこは Plagger::Plugin::Aggregator::Xango とか、t/02-pull.t と t/lib/XangoTest/SimplePull/{Broker,Handler}.pm あたりを読んでがんばる。ていうか POD の SYNOPSYS にすぐ動くサンプルを書いていてほしいと思ったり。あと、公式サイトに書いてある svn://svn.razil.jp/Xango/trunk って SVN レポジトリがアクセスできないけど http://svn.razil.jp/Xango/trunk ならアクセスできる罠。まぁ、最終的には CPAN にアップされている 1.08 を使ったんだけど。
crawlerのほうは付属のサンプル読めば大体わかるかな。IParser のサブクラスを作るのも割りと簡単。たいていは PageData のサブクラスも作る羽目になりそうだけど。わかんなければ com.torunski.crawler.parser.htmlparser.SimpleHtmlParser あたりを読めばいい。
で、結局、スクレープのことも考えれば Perl は HTML::TreeBuilder::XPath とかあるから Xango がいいかなと思ったりもするが、 JavaHTML Parserを使えばなにげに CSS セレクタが使えたりするんだよね。Ruby の scrAPI ほどスマートには使えないけど。
そういや、RubyPython の Crawler Framework は見つかんなかったんだけど、あるのかな。適当にリクエストをスケジュールして、マルチスレッドで動いてくれるようなフレームワークがあったら結構需要がありそうだけど。

追記

はてブRuby用のrcrawlというのを見つけた。しかしRubyForgeへの登録が20日で28日現在でバージョンアップ4回ってのどんなもんだろう。