puedes usar sockets también... o hasta
file_get_contents()
el caso es que no importa con que lo hagas, el objetivo básico es leer URLs (
sin importar con que o como)
eso es lo sencillo...
lo complicado es leer los atributos, establecer algoritmos de semántica... no se, hay mas cosas por las cuales preocuparse...
aunque un spider no se debe ejecutar vía Web, quizá eso es algo que no has pensando....
por ultimo, se me ocurre que puedes usar
htmlSQL para empezar algo....
suerte!