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

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

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

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

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

コメント

このブログの人気の投稿

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

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

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

Ubuntu で 右クリックでファイルのパスを取得したい → 難しいことは不要だった。

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

Nexus 5X が起動しなくなり、Sony Xperia XA1 Plus を買ったのだがカメラが残念すぎる。

インド料理の食べ方

接点復活剤を鍵穴に一吹きすると

ネットワークのスループットを知るために iperf

肺活量 6500cc