domingo, 23 de octubre de 2016

Como hacer web scraping utilizando excel y vba? - Parte 2

Continuando con lo visto en el último post, hoy vamos a revisar el proceso de inspección de las páginas web. En que consiste esto? La idea es revisar la página que vemos en nuestro navegador y que es la vista de usuario final y revisar el código HTML que se encuentra detrás de la misma y así poder identificar las partes mas importantes del mismo y que son las que nos van a servir para construir la macro en la última entrega.

Recuerdan la página que vimos en el último post? vamos a tomarla como base y vamos a iniciar el proceso de inspección de la misma. Para poder hacerlo, debemos dar un clic derecho en la página y seleccionar: inspeccionar:



Al hacerlo nos va a aparecer la página con unas divisiones adicionales en el lado derecho de la misma, tal y como se ve en la siguiente imagen:



En la ventana superior derecha, esta el código que esta detrás de la página que vemos en el lado izquierdo. En la parte inferior izquierda, tenemos temas relacionados con el diseño de la página, como son las clases css utilizadas, la distribución de la página etc. 

Estas últimas, no nos interesan para el ejercicio que vamos a realizar, así es que nos vamos a centrar en la ventana superior derecha, y en la página de la izquierda.

Si seleccionamos una de las lineas de la ventana izquierda, debemos ver en la página de la derecha, esa linea de código HTML a que parte de la página esta asociada:



En la imagen anterior, la linea seleccionada, esta asociada a todo el cuerpo de la página, y si continuamos explorando, podemos encontrar la linea HTML que esta asociada al texto que aparece en rojo: Estado de Vuelo:



Y si continuamos revisando, vamos a llegar al código HTML que esta asociado con la tabla en la que esta la información de los diferentes vuelos:



Y aquí es donde queremos llegar. El texto AV que aparece en la página, se encuentra entre una etiqueta span, y esta etiqueta tiene un id. Para este caso el id es: mainContent_GrillaEstadoVuelo1_GridVuelos_LabelAerolinea_0. Para el vuelo siguiente, se conserva el mismo  id en escencia, solo que este se incrementa en 1: mainContent_GrillaEstadoVuelo1_GridVuelos_LabelAerolinea_1. 

Ese id se encarga de diferenciar las etiquetas span que hay en toda la página. Y ese id es el que vamos a utilizar en nuestra macro, para que al pasar el código HTML al interprete de vba, este sepa que datos debe extraer. 

Si continuamos explorando, vamos a identificar que hay etiquetas span, en las que se encierra el texto con todos los datos de cada vuelo, como el número de vuelo, la fecha de salida, llegada etc.

Cuando en la inspección logremos identificar el código HTML que nos interesa, vamos a copiarlo. Para esto debemos hacer clic derecho en el código y dar copiar elemento.


Luego con el comando ctrl + v, podemos pegar la misma en el editor de vba o donde queramos.

Hasta aquí la segunda parte. Nos queda pendiente la tercera y última entrega, en la que vamos a escribir la macro para poder leer el código HTML y procesarlo en excel.

No hay comentarios.:

Publicar un comentario