Extrayendo datos del Campeonato Brasileño Femenino mediante un web scraper.

Nuestros estudiantes del MBA en Periodismo de Datos elaboraron una serie de tutoriales como proyecto final del curso Low Code: Transformando datos en noticias sin programación, impartido por el profesor Adriano Belisário. Este mes puedes consultar algunos de sus trabajos y explorar los tutoriales que crearon. El primero de la lista es el de la estudiante Beatriz Pinheiro.

A pesar de la reciente transformación del fútbol femenino brasileño, con modificaciones en el calendario, mayor disponibilidad de transmisiones de partidos y un mayor interés mediático y público, aún existe cierto retraso en la profesionalización de este deporte, prohibido por decreto durante 40 años en Brasil. Este retraso se refleja en los registros históricos del fútbol femenino, lo cual perjudica considerablemente la cobertura periodística, ya que es difícil encontrar datos sistematizados que sustenten la producción de noticias. 

Considerando este escenario, el objetivo de este tutorial es presentar Web Scraper como una herramienta que puede ayudar a explorar y crear bases de datos más amigables sobre equipos, jugadores y competiciones, con el fin no sólo de facilitar el trabajo periodístico sino también contribuir a los registros históricos para el desarrollo del fútbol femenino brasileño. 

Entendiendo la herramienta 

Web Scraper es una extensión de Google Chrome que permite extraer datos utilizando el código HTML de sitios web como fuente. Este código estructura la información del sitio web en elementos que funcionan como "cuadros" donde se ordenan los datos. La función de Web Scraper es extraer los datos de estos cuadros y transformarlos en una hoja de cálculo estructurada. 

La fuente de datos utilizada en este tutorial será Soccerway Women, un sitio web que recopila estadísticas de partidos de fútbol femenino a nivel mundial e información como: equipos, atletas, campeonatos, partidos, resultados, etc. Para este ejercicio, utilizaremos la tabla del Campeonato Brasileño Femenino A1 – 2020 como ejemplo y extraeremos información sobre todas las atletas que compitieron en la competición. 

La idea es seleccionar los siguientes datos de todos los jugadores: club, nombre, posición, edad, partidos jugados y goles marcados en el campeonato. Si este proceso se hiciera manualmente, tendríamos que acceder individualmente a la página de cada uno de los 16 equipos, acceder a la página de cada jugador y copiar y pegar la información deseada en una hoja de cálculo. 

Además de ser extremadamente laborioso y agotador, este proceso también sería más propenso a errores si se realiza manualmente, lo que pondría en peligro el análisis completo de los datos recopilados. Aquí es donde entra en juego Web Scraper, que permite automatizar los pasos mencionados anteriormente. 

Manos en la masa 

El primer paso para iniciar el proceso de scraping es instalar Web Scraper, disponible a través de este enlace. Después, simplemente haz clic en el icono de extensiones en la esquina superior derecha de Google Chrome y selecciona Web Scraper para activarlo. 

Con la extensión instalada y la clasificación del Campeonato Brasileño Femenino abierta, haremos clic derecho y seleccionaremos la opción. InspeccionarObserve que se abre una pestaña en la parte inferior de la pantalla, que muestra información sobre...

Códigos de página. Prestemos atención a la pestaña. Raspador web, el último que aparece en el menú, a la derecha. 

Con la pestaña Web Scraper abierta, haga clic en el botón. Crear nuevo mapa del sitio y selecciona la opción crear mapa del sitioAparecerán dos campos en blanco: el primero, Nombre del mapa del sitioEste campo se rellenará con el nombre de su robot, que extraerá la información. En nuestro caso, lo llamaremos "brasileirao-feminino-2020". A continuación, aparecerá el campo. URL de inicioEn esta sección, definiremos la página de inicio para extraer los datos. En este ejemplo, la página de clasificación del Campeonato Brasileño Femenino. 

A continuación, definiremos el primer parámetro que el robot extraerá. Para ello, haremos clic en el botón. Añadir nuevo selector y trabajar con los campos ID, Tipo y SeleccionarEl campo Id se utiliza para nombrar la información que queremos extraer, y en este caso, queremos información de cada uno de los equipos del Campeonato Brasileño Femenino, por lo que llamaremos al selector "equipos".

El campo Tipo indica el tipo de elemento de código HTML que se extraerá, que puede ser texto, enlace, imagen, entre otras opciones que aparecen al hacer clic en el campo. Al observar la clasificación del Campeonato Brasileño Femenino, vemos que cada equipo en la tabla tiene un enlace que dirige a su página individual. Por lo tanto, en este paso, seleccionaremos la opción este enlace

El siguiente paso es activar el botón. selecciona Haga clic en el nombre de cada equipo. Observe que el enlace aparece resaltado en un recuadro rojo y, a partir del segundo clic, la herramienta reconoce la selección que desea realizar. Compruebe que todo esté correcto y confirme haciendo clic en el botón verde. terminado de seleccionar, que aparece encima de la barra de inspección. 

No olvides marcar la opción. MúltiplePara garantizar que todos los elementos seleccionados, es decir, todos los equipos, sean reconocidos por el selector, simplemente haga clic en el botón. guardar selector al final de la página y ahí lo tienes, el primer raspador. 

Nuestro objetivo aquí es recopilar información sobre los atletas de cada equipo, por lo que accederemos a la página del Corinthians, el primero en la clasificación, a modo de ejemplo, y nos desplazaremos hacia abajo hasta la sección donde se encuentra la información de los atletas. 

En la barra de control de Web Scraper, haga clic en el selector "Equipos" ya creado y repita el proceso anterior, esta vez para cada atleta del equipo: cree un nuevo selector, introduzca el nombre "Jugadores" en el campo Id, seleccione el tipo de elemento como enlace de nuevo para asegurar que el robot acceda a la página de cada jugador y haga clic en el botón de selección. A continuación, simplemente seleccione el nombre de cada jugador y haga clic en "Finalizar selección", marcando la opción "Múltiples". Finalmente, guarde el selector.

El siguiente paso es acceder a la página de un atleta, hacer clic en el selector de "jugadores" en la barra de control del Web Scraper y repetir el proceso para la información que buscamos. Esta vez, queremos seleccionar la posición en la que juega cada atleta, así que llamaremos "posición" al selector. Ahora, el tipo de elemento que queremos seleccionar es un textoy no necesitaremos seleccionar la opción MúltipleComo solo tenemos un bloque de información de interés, solo necesitamos guardar el selector. 

A partir de aquí, el proceso sigue siendo el mismo para el resto de la información del deportista que buscamos: edad, partidos jugados y goles marcados esta temporada. 

Extrayendo los datos 

Una vez hecho esto, es hora de extraer datos. En la barra de control del Web Scraper, haremos clic en el botón. mapa del sitio brasileirao-feminino-2020, seleccione la opción raspar, y luego haga clic en el botón empezar a raspar.

Ahora es momento de descansar, porque el robot ya está trabajando: note que se abre una nueva ventana del navegador, en la que la herramienta accede a las páginas de cada equipo y cada atleta del Campeonato Brasileño Femenino 2020 para raspar los datos que especificamos. 

Cuando el proceso se complete, simplemente haga clic en el botón. refrescarEl raspador web mostrará una vista previa de la tabla organizada después de extraer los datos. Ahora, simplemente haga clic de nuevo en el botón del mapa del sitio. Campeonato Brasileño Femenino 2020 y selecciona la opción Exportar como CSV

¡Listo! Ya tenemos la tabla completa, con información sobre todas las jugadoras que participaron en el Campeonato Brasileño Femenino 2020.