卒研メモ: PHPによるWeb crawlerの作成

 以前の卒研でPerlによるWeb crawler又はrobot(Web情報自動取得プログラム)を実装したことがありましたが,イマドキPerlでもないだろうということで,PHPによる実装を考えてみます。

 PHPの標準ライブラリにcURLクラスがあるので,これをWebクライアント(ブラウザ)として利用することができます。
 また,Web crawlerの礼儀として,アクセス先のWebサーバにおいてあるrobots.txtの情報に基づいて,Webデータの収集を行う必要があります。実例としてはこれが参考になりそうです

 アクセスの効率を上げるための仕組みはいくつかありますが,DBとのやり取りを高速にするためのmemcachedの活用(PHPからはmemcachememcachedクラスを使用),マルチスレッド化が定番です。この辺を極めると,後で色々な活用方法が考えられるようになります。