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

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

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

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

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

コメント

このブログの人気の投稿

2才5ヶ月の息子の絵が上手すぎる!

何故MSはOffice Document Imaging を捨てたのか、、、

url に日本語が含まれている場合の Firefox と IE の挙動の違い。

Nexus 9の熱暴走癖、バッテリーが少ないと発生しやすいようだ。

インド料理の食べ方

Firefox urlエンコード機能をUTF-8化する方法。

IKEA KOLON(フロアプロテクター)は床に悪影響を与える可能性がある。

Xfce環境でCaps LockをCtrlに変える。

インドレストラン「シュクリヤ」

新長田の中華料理店 「新徳園」