S2Robot

ここ数日取り組んでいたことなのだけど、方向性が見えたのでSeasarにプロジェクト追加申請をしてみました。S2RobotとはWeb巡回ロボット(クローラー、スパイダー)を構築するためのフレームワーク(ライブラリに近いかも)です。

今まで、ポータル案件で話を進めると、全文検索の話もよくされて、対応に悩んでいたので、そのうち、Solr ベースで何か作ろうと思って、1 年以上経過している気がする。近頃は、Solr まわりにも触れる機会があったり、そんでもって、Apache の Droid を調べてみたりと(これはまだ使える気がしないのだけど)、いろいろと模索しながら経験値を上げていた。そんで、この手のロボットって、たとえば、作ったサイトのリンク切れチェックとか、サイト内のデータ収集とか、画像など特定データファイルの収集とか、いろいろな用途がありえるのだよね。つまり、これらのことが簡単にできれば、結構、いろんな場面で使うことが可能かと(Webでやることって多いし)。というわけで、それらのことができるようなWebロボットのフレームワークを作ってみた(まだ、完成はしてないけど、GWが終わる頃にはできるかと)。

仕組み的には、dicon に S2Robot を書いて実行すれば指定したURLから辿っていく感じ。アクセスしたURLは指定した Transformer インタフェースのインスタンスで処理する。つまり、Transformer を実装したクラスを用意すれば、HTMLだろうが画像だろうがその URL のデータを自由に処理できる感じ。あとは、DB も URL の保存とかに使うから、DBFluteも使っておく。DBFlute の Maven プラグインも使っているけど、pom に情報を書いておけば Maven でダウンロードからソースの生成までできるので楽チンだ。そんな感じのものですので、よろしくお願いします~。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です