以前の卒研でPerlによるWeb crawler又はrobot(Web情報自動取得プログラム)を実装したことがありましたが,イマドキPerlでもないだろうということで,PHPによる実装を考えてみます。
PHPの標準ライブラリにcURLクラスがあるので,これをWebクライアント(ブラウザ)として利用することができます。
また,Web crawlerの礼儀として,アクセス先のWebサーバにおいてあるrobots.txtの情報に基づいて,Webデータの収集を行う必要があります。実例としてはこれが参考になりそうです。
アクセスの効率を上げるための仕組みはいくつかありますが,DBとのやり取りを高速にするためのmemcachedの活用(PHPからはmemcacheかmemcachedクラスを使用),マルチスレッド化が定番です。この辺を極めると,後で色々な活用方法が考えられるようになります。