2004/09/27

正規表現を使わないスパイダリング

 正規表現にこなれるまで時間が取れないので,かなり力業ではあるが,サーバーに負担を掛けない文字列置換を試みてみた。恥ずかしいが一応書いておこう。

 まず,BASP21のw3getという機能を使って,ページを入手する。
 次に,こいつをテキストストリームに取り込んで,MySQLのテキストカラムに挿入する。
 そして,全ての行の先頭に"#"を挿入し,コメント化する。(特定の文字列が含まれていない場合に,行全部を消すという方法が分からなかったので。)
 定型的なタグや文字の並びをReplace関数を使って,片っ端からSQL構文に書き換えていく。
 最後に wget でローカルに保存し,MySQLにリダイレクトで放り込む。

 MySQL側で文字列を操作してしまえば,基本的に負担はほとんど考えなくてもいいので安心だし,非常に高速に処理できる点が有利ポイント。

 でも,スマートな方法じゃないし,例外処理の施しに継続的に気を配っておかなければな要らないのはちょっとダサいなぁ。

0 件のコメント: