Aprende Web Scraping con Excel y VBA

Varias personas me han preguntado sobre el tema de Web Scraping, una técnica usada para extraer información desde páginas Web. Para esta técnica se usan lenguajes de programación como Python, pero en esta ocasión te mostraré cómo puedes aprenderlo usando nuestro lenguaje favorito VBA (Visual Basic para aplicaciones).

Desde la plataforma TuYoYExcel.com tenemos la siguiente oferta para comenzar a capacitarnos y prepararnos para el futuro de la automatización en Office. Un curso fenomenal y el primero sobre esta temática.

OFERTA SUSCRIPTORES DE EXCELeINFO – CURSO WEB SCRAPING CON EXCEL Y VBA

✔ Plataforma online TuYoyExcel.com
✔ Un mes GRATIS: usando el código SAC
✔ Oferta válida hasta el 17-may-2020.
✔ Cancelación en cualquier momento.

Ver Video Introducción a Web Scraping desde Excel y VBA

Suscríbete al canal de EXCELeINFO en YouTube para aprender más de Excel y macros.

Qué es web scraping

  • Web Scraping es la técnica utilizada para extraer datos de una Web.
  • Se puede extraer tanto texto, emails o links como descargar ficheros o imágenes.
  • También se puede extraer información adicional que no está visible en la Web.
  • Esta técnica no solo nos permite extraer información de una web, sino que también nos permite subir información a una web… subir ficheros, publicar Tweets, crear carpetas en OneDrive o subir archivos a OneDrive sin tenerlo sincronizado en el equipo.
  • También se puede interactuar (a través de solicitudes HTTP) con las API´s que nos dicen como acceder a información de grandes empresas como Facebook, Twitter, YouTube, Google, etc. También se puede programar una autenticación OAuth 2.0, etc.

QUÉ PODEMOS HACER CON WEB SCRAPING

  • Los emails de YellowPages (páginas amarillas) que no aparecen en la Web.
  • Cotizaciones Intradía de Yahoo Finance que no aparecen en la Web.
  • Interactuar con OneDrive sin estar sincronizado en tu equipo, poderlo hacer desde cualquier laptop.
  • Acceder a datos de YouTube (likes, suscriptores, comentarios), Google Maps, Publicar Tweets… todo con VBA.
  • Descargar con VBA ficheros e imágenes de Webs.
  • Acceder a ficheros internos de consulta que generan las webs (JSON-XML).

Con VBA hay varias formas de hacer Web Scraping:

  • La mayoría de los usuarios empiezan a practicar Web Scraping con el objeto IE Explorer que lo que hace es simular una navegación por una web en concreto. Este método es demasiado lento y poco fiable, no recomendable en el 95% de los casos.
  • El objeto que nosotros utilizamos accede directamente al servidor donde está alojada la web y de ahí extraemos la información, lo cual multiplica la rapidez y eficacia por 100.

VEAMOS UNA PRÁCTICA

  • Extrae datos de negocios de YellowPages.com.
  • Criterios NEGOCIO y CIUDAD.
  • La macro se va recorriendo las distintas paginaciones que han devuelto todos los resultados de la búsqueda (para no hacer el proceso muy largo solo saca los datos de las 3 primeras páginas de resultados).
  • Va entrando en cada negocio y extrae varios datos, entre ellos los emails que no están visibles en la Web.

Tenemos un archivo de Excel donde haremos la búsqueda por palabra o negocio y por ciudad o ubicación, usando una macro con VBA.

Web Scraping desde Excel y VBA.

Figura 1. Web Scraping desde Excel y VBA.

La macro hará la búsqueda y nos devolverá la información a la hoja resultado. Ahora veamos cómo sería la búsqueda manual desde la página yellowpages.com. La ventana de hacer la consulta desde una macro usando Web Scraping es que podemos extraer información de una página, incluso información que no está visible.

Haciendo búsqueda manual desde una página Web.

Figura 2. Haciendo búsqueda manual desde una página Web.

Al hacer la consulta con una macro, se devolverá el resultado de la Figura 3.

Devolver datos de páginas Web a Excel usando Web Scraping con VBA.

Figura 3. Devolver datos de páginas Web a Excel usando Web Scraping con VBA.

OFERTA SUSCRIPTORES DE EXCELeINFO – CURSO WEB SCRAPING CON EXCEL Y VBA

✔ Plataforma online TuYoyExcel.com
✔ Un mes GRATIS: usando el código SAC
✔ Oferta válida hasta el 17-may-2020.
✔ Cancelación en cualquier momento.

Descarga el archivo de ejemplo

Web Scraping – 40- Extrayendo Información YellowPages.com.zip

Si te gustó este tutorial por favor regístrate en nuestra Lista de correo y Suscríbete a nuestro canal de YouTube para que estés siempre enterado de lo nuevo que publicamos.

You may also like...