Web Scraping: cómo sacar información de una web

Web Scraping: cómo sacar información de una web

Javier Jiménez

Son muchos los servicios y herramientas que tenemos a nuestra disposición cuando se trata de aprovechar las plataformas online y los dispositivos que utilizamos. A la hora de navegar por Internet, en muchas ocasiones resulta necesario obtener ciertos datos e información. Podemos hacer uso de lo que se conoce como web Scraping. En este artículo vamos a explicar en qué consiste y daremos también algunas opciones para ello.

Qué es web Scraping

Con web Scraping, o también conocido como raspado web, nos referimos al método a través del cual podemos extraer información de sitios web. Para ello se utiliza software que incluso puede simular la navegación normal de un usuario, pero automatizando el proceso. Podemos relacionar el web Scraping con la indexación de un sitio web en los buscadores. Ahora bien, en este caso se centra más en la transformación de datos sin estructura en la web (por ejemplo el formato HTML) en datos estructurados que se pueden almacenar y analizar en una base de datos o una hoja de cálculo.

Para el tema del posicionamiento web ha sido muy utilizada esta técnica en los últimos años. Sirve también para comparar precios en tiendas online, monitorización de datos, etc. Muchos usuarios se basan en esta característica para crear contenido de calidad. En definitiva, el web Scraping podemos decir que consiste en extraer información de una página web. Algo que podemos hacerlo a nivel de usuario, de forma manual, pero que también podemos utilizar programas informáticos para ello.

Actualmente, la técnica del Web Scraping dispone de varios niveles de automatización, a continuación, tenéis algunas de ellas:

  • Copiar y pegar de una persona: incluso con los mejores algoritmos que existen, el web scraping lo hace mejor un ser humano que se encargue de copiar y pegar la información relevante de una página web.
  • Protocolo HTTP: las principales webs estáticas o dinámicas se pueden acceder a ellas con el protocolo HTTP, y posteriormente podemos usar expresiones regulares o programas específicamente diseñados para «parsear» la información que nosotros queramos. Estos parseadores son los denominados como «parsers de HTML», algunos lenguajes ampliamente usados con XQuery y también HTQL, todo ello relacionado con HTML.
  • Algoritmos para minería de datos: muchas webs tienen grandes colecciones de páginas generadas dinámicamente a partir de una base de datos que se ha obtenido de alguna manera.

Un aspecto importante, es que es posible que estas técnicas vayan en contra de los términos de uso de algunas webs, y los administradores del sitio web podrían bloquear nuestro acceso si descubren este tipo de técnicas, ya que existen programas y configuraciones del servidor web para evitar o mitigar el web scraping, ya que esto provoca un impacto importante en el rendimiento del servidor donde está alojada la web.

Un administrador de sistemas, podrá saber que alguien está haciendo web scraping cuando tiene miles de peticiones desde la misma dirección IP de origen, ya que esto significa que está rastreando toda la información de la web. Algunos países han prohibido o limitado este tipo de técnicas, con el objetivo de proteger a las diferentes empresas, ya que en muchos casos podría hacer que el servidor se bloquee si no se hace correctamente.

Ahora que ya conocéis las principales técnicas para extraer información de una web, os vamos a mostrar diferentes programas para ello, lo que nos permitirá automatizar y facilitarnos enormemente el acceso a toda la información.

Programas web Scraping para extraer información

Vamos a ver algunos programas gratuitos que podemos utilizar para recopilar información de una página web. Estos datos se pueden extraer de una manera sencilla si utilizas las herramientas adecuadas. Por ejemplo si te interesa saber más de un sitio en concreto o sospechas que puede ser inseguro y quieres comprobar hasta qué punto puedes obtener más datos.

Parsehub

Una de las herramientas que tenemos a nuestra disposición es la de Parsehub. Es una aplicación de escritorio que permite conectarse a cualquier sitio web del que queremos extraer datos. Tiene una interfaz cuidada y además es sencillo de utilizar. Podemos exportar los datos en diferentes formatos como JSON, CSV o Excel.

Lo primero que tenemos que hacer para comenzar utilizar Parsehub es descargarlo de su web. Veremos que está disponible para Windows, Linux y macOS. Una vez lo tengamos bajado el siguiente paso será instalarlo. Una vez lo ejecutemos nos pedirá crearnos una cuenta para poder empezar a usarlo.

Parsehub

Cuando lo abramos nos aparecerá una ventana como la que vemos en la imagen de arriba. Posteriormente tendremos que crear un nuevo proyecto y escribir la dirección de la que nos interesa extraer datos para que comience.

Extraer datos con Parsehub

Scrapers

Otra opción que tenemos para recopilar información de un sitio web es Scrapers. Se trata en este caso de una herramienta web, también gratuita, que va a permitir llevar a cabo esta acción de una manera sencilla e intuitiva. Los datos extraídos los podemos exportar en JSON, HTML y CSV.

Cuando entremos en su web veremos que es necesario registrarse para utilizar el servicio. A partir de ahí tendremos que crear un nuevo Scraper, poner los datos necesarios y darle a comenzar. Empezará a recopilar información de ese sitio que posteriormente podremos analizar para saber más.

Recopilar información son Scrapers

Scrapingdog

Una alternativa similar a la anterior es Scrapingdog. Podemos probar su versión de prueba gratuita. Tendremos que registrarnos, una vez más. Para un uso básico esta versión gratuita será suficiente. También cuenta con una página de pago para acceder a través de un proxy y poder extraer datos de sitios más complejos.

Como en los casos anteriores tendremos que poner la URL que nos interesa y comenzar a extraer información de este sitio. Es un proceso sencillo y nos encontraremos con la posibilidad de obtener más información sobre este sitio web en concreto que nos interesa.

Scrapingdog

Dexi.io

Dexi cuenta con una interfaz simple que nos permite extraer datos en tiempo real de cualquier página web utilizando su tecnología de aprendizaje automático incorporada. Permite extraer tanto textos como imágenes. Se basa en una solución en la nube y permite exportar datos extraídos a plataformas como Google Sheets, Amazon S3 y otras similares.

Más allá de extraer datos, con Dexi también podemos monitorizar en tiempo real. Cuenta con herramientas para mantenernos actualizados sobre todos los cambios que pueda haber en un sitio en concreto. Una manera de tener un mayor conocimiento también sobre la competencia, en caso de tener una página para vender productos online, por ejemplo. Tiene opción gratuita para un uso básico, pero también cuenta con otras de pago.

Extraer información con Dexi

Extensión para Chrome

Una alternativa a estos servicios que hemos visto es la de utilizar una extensión para el navegador Google Chrome. La podrás descargar e instalar de forma gratuita desde la tienda oficial del navegador. Su funcionamiento es similar al anterior. Este raspador de datos puede extraer información de páginas HTML. Todo lo que extrae lo almacena en una hoja de Excel para que puedas analizarlo posteriormente y de una manera sencilla.

Además de Excel, los datos los podrás guardar en Google Sheets. Admite formatos como XLS, CSV, XLSX o TSV. Cuenta con una gran cantidad de opciones. Es una extensión gratuita, aunque tiene un límite de 500 páginas por mes. Puede que sea más que suficiente para la mayoría de usuarios, pero si necesitas algo más siempre podrás contratar alguno de sus planes de pago.

Por tanto, puedes también instalar una extensión para Chrome en el ordenador y obtener esta información de cualquier sitio web que te interese. Su funcionamiento es sencillo. Eso sí, si vas a instalar un complemento de este tipo en el navegador, sea cual sea, siempre te recomendamos que lo descargues desde la tienda oficial y evites sitios de terceros que puedan ser un problema de seguridad.

Gracias a todos estos programas, vamos a poder realizar estas técnicas para copiar toda la información que nosotros queramos desde los diferentes sitios web, con el objetivo de poder utilizar esta información posteriormente. Es muy importante que te asegures de que tienes permiso para realizar estas técnicas, ya que en algunos países está limitada la posibilidad de hacer esto.

¡Sé el primero en comentar!