Cuando vamos a rastrear un sitio web muy grande para hacer una auditoría SEO no nos valen las herramientas convencionales. La solución que te propongo en este post es crearte tu propio software de rastreo, si tienes algunos conocimientos de programación, verás como en realidad no es muy difícil.
Yo uso Screaming Frog para hacer rastreos (crawls en inglés) pero cuando nos topamos con un sitio muy grande, de 500.000 páginas o más, se vuelve una tarea terrible. Para abrir los ficheros, hacer una consulta o sacar un informe puede tardar horas o quedarse colgado. Esta limitación se debe a que estos programas trabajan directamente con la memoria RAM, y cuando se trata de un sitio web muy grande no solemos tener tanta RAM como para majearlo.
Antes de ponernos manos a la obra quiero comentarte que también tenemos la opción de utilizar herramientas de pago como por ejemplo DeepCrawl.
Lo que vamos a hacer es crearnos una aplicación PHP usando la librería PHPCrawl, y esta aplicación irá guardando todo lo que va rastreando en una base de datos. En lugar de empezar desde cero vamos a coger un ejemplo que ya está hecho y puede descargar desde aquí.
Preparamos la base de datos
Primero creamos la base de datos, ya sea con phpMyAdmin o con la herramienta que prefieras. Sobre esa base de datos importaremos el archivo table-crawler.sql que viene en el fichero que acabas de descargar. Con esto ya tenemos la Base de datos lista, ahora vamos a preparar la aplicación.
Editamos el fichero crawler-example.php
En la línea 2 cambiamos notprovided.eu por el nombre del dominio que queremos rastrear.
En la línea 3 mysql_connect(«localhost», «database», «password») or die(mysql_error()); cambiamos database por el nombre de usuario (viene mal en el ejemplo, no es la base de datos sino el usuario lo que hay que poner ahí)
En la línea 4 mysql_select_db(«table») or die(mysql_error()); cambiamos table por el nombre de la base de datos.
La línea 68 $crawler->setFollowMode(1); indica que se va a hacer el rastreo en el modo 1, que significa que se van rastrear todos los subdominios, si queremos que se rastree sólo el subdominio indicado en la línea 2 lo ponemos en modo 2: $crawler->setFollowMode(2);
Ya está todo listo, sólo tenemos que ejecutar el fichero crawler-example.php y se irán metiendo los resultados en la base de datos que hemos creado. Para consultarlos podemos usar phpMyAdmin o realizar consultas directamente.
Si te ha gustado el post compártelo en tus redes, te lo agradeceré enormemente!
Me parece conveniente destacar también la herramienta Xenu, que sirve para analizar todos los detalles de una web, pero eso sí, si la web es muy grande puede llevar muchísimo tiempo de análisis. Para webs de tipo empresa o cualquier web de tamaño pequeño a mí me parece imprescindible.
Hola Alberto y gracias por tu comentario.
Efectivamente también está Xenu!
Saludos!