Crawler con Laravel 5.3 y Goutte

Lo primero que debemos hacer es un proyecto en laravel (5.3), para esto utilizaremos composer:

Una vez creado el proyecto seguimos las instrucciones de goutte, se encuentran en el siguiente link laravel-goutte

La primera instrucción nos pide agregar laravel-goutte a nuestro proyecto, entonces  posicionados en el directorio del proyecto, ejecutamos el siguiente comando:

Una vez ejecutado el comando, y siguiendo el manual, agregamos las  aliases y providers correspondiente.

En el ejemplo de github de goutte, el crawler, analiza el sitio duckduckgo, para este ejemplo utilizaremos el sitio fcstats.com para obtener la tabla de posiciones del fútbol de primera división de Chile.

el link para esto es: http://es.fcstats.com/tabla,primera-division-chile,59,1.php

Goutte funciona utilizando los selectores de JQUERY para acceder a las clases e ids de los elementos html para obtener los datos.

Utilizando el inspector de sitio de chrome, revisemos el sitio de fcstats.

En la imagen la tabla tiene la etiqueta tr y el id team_1024, que pertenece a COLO-COLO, si se sigue inspeccionando se obtienen los ids de los demás clubes por deducción.

Modificamos nuestro archivo routes del proyecto para obtener los datos de la tabla de posiciones de la siguiente manera:

 

Entonces en http://localhost/latabla/public/ obtendremos posición del equipo, nombre del equipo, partidos jugados, ganados, empatados, perdidos, goles a favor, en contra y el puntaje tal como se ve en la imagen:

Leave a Reply

Your email address will not be published. Required fields are marked *