検索エンジンの作り方
前から気になっていたんだけど、最近少し勉強した。
自動でクロールするロボットなんて、どうやって作るんだ????phpとかrubyとかjavaとかでそんなことができるのかー????って思ってた(超素人なので・・)けど、案外簡単だった。
試しに、あるページからURLを抽出して、そのリンクをたどって、またURLを抽出して・・・っていうのを延々自動的に繰り返すってプログラムを書いてみたら、100行もかからず書けた。
書くほどのことでもないかもしれないけど、↓のことだけ。
? あるページ(Yahooカテゴリ)とかをスタートにする
? そのページのHTMLを開いて、正規表現でタグのURLを抽出して、データベースに登録する
? whileとかを使って、データベースに登録したURLについて順番に、?と同じことを繰り返す
とまぁ、URL抽出だけだと簡単なんだけど、その先が難しい。
ページを形態素解析したり、インデックスを作ったり・・
勉強程度に軽く・・って気持ちでできるもんじゃないなと思って、そこまではできなかったけど、なんとなく仕組みが分かったので、ちょっと満足。