Web scraping en php: Sintaxis y aplicaciones

En este artículo aprenderemos lo que es el web scraping, para qué sirve y cómo utilizarlo para extraer todo la información necesaria de una página web.

https://hackprogramming.com/web-scraping-in-node-js-with-multiple-examples/amp/

QUE ES EL WEB SCRAPING

El web scrapping es una técnica utilizada como alternativa para extraer datos de los diferentes sitios web que no nos facilitan una API para acceder a los mismos. Los motores de búsqueda como Google utilizan estas técnicas para analizar e indexar los contenidos de los sitios web.

Consiste en la extracción de los datos significativos de una o varias páginas web determinadas, o de todas las páginas web que estén relacionadas mediante enlaces en un sitio web, para una manipulación o análisis posterior .

Leer en Frikipandi:Web Scraping con phphttp://www.frikipandi.com/public/post/web-scraping-con-php/Web Scraping con php

El funcionamiento del scraper es sencillo, lo que hace es enviar una petición GET a la página que se desea scrapear, luego recibir la información en formtaro html/xml para después utilizarla como más nos convenga.

Como vimos en el siguiente artículo, existen funciones para abrir, leer y escribir archivos, las cuales nos van a servir también para hacer web scrapping en php.

SINTAXIS DEL WEB SCRAPING MANUAL EN PHP

Para hacer web scrapping en php tendremos que realizar 2 cosas:

  1.  Buscar y leer la información del sitio web buscado con file_get_contents().
  2. Seleccionar la información deseada con preg_match. sirve para encontrar coincidencias dentro de una cadena, usando expresiones regulares.

Ejemplo básico

Vamos a extraer el título principal de este sitio web, la famosa etiqueta title de html.

1- Buscamos y leemos toda la información del sitio web

En este caso hemos visto lo sencillo que puede ser extraer el título de una determinada página web, por lo que el alcance del poder del web scraping manual no tiene límites, hasta donde llegue nuestra imaginación.

APLICACIONES DEL WEB SCRAPING EN PHP

Podemos aprovechar el web scraping para conseguir grandes cantidades de información (Big data) sin teclear una sola palabra. A través de los algoritmos de búsqueda podemos rastrear centenares de webs para extraer sólo aquella información que necesitamos. Pero algunas de las aplicaciones más frecuentes pueden ser las siguientes:

– Limpieza y filtrado de datos

Se utilizan diversas técnicas para extraer de una gran cantidad de contenido los datos que resulten realmente útiles a la búsqueda del usuario, haciendo uso de múltiples filtros para limpiar la información, depurándola y otorgándole estructura para que sea fácil de leer y entender.

– Buscar ofertas de empleo

Podríamos utilizar el scrapping para obtener información de los titulos de las ofertas de empleo que nos resultaran interesantes.

– Extracción de datos de interés particular

Puede ser que nos interese en un momento determinado extraer una serie de datos relevantes para nuestro proyecto web o simplemente para nuestro interés personal. Imaginemos que deseamos monitorizar los precios de un artículo (por ejemplo los precios de un iphone) de una determinada tienda online.

ALTERNATIVAS AL WEB SCRAPING MANUAL

Herramientas web scraping online gratuítas

Si no queremos perder nuestro tiempo en crear un código para hacer web scraping, existen herramientas online que hacen este trabajo por nosotros, de manera que colocamos la url de la cual queremos obtener una información determinada y así nos la mostrará. Posteriormente mediante APIS podríamos crear alertas de aviso en caso de modificación de dichos parámetros de búsqueda como pueden ser los precios de un artículo.

Programación manual del web scraping

Existen múltiples frameworks en php que facilitan mucho la tarea manual del web scrapping.

AMBITO LEGAL DEL WEB SCRAPING

Un uso indebido de técnicas web scraping o crawling podria hacernos incurrir en una competencia desleal o en un incumplimiento de la ley de protección de datos. Por lo tanto siempre que se realice web scraping para hacer un uso privado del mismo, no habrá problema alguno.

EJEMPLOS DE  WEB SCRAPING

En este interesante artículo podemos ver un ejemplo de web scrapping con php con peticiones curl

Web Scraping: Almacenando Información

CONCLUSIÓN

 

Summary
Artículo
Web scrapping en php: Sintaxis y aplicaciones
Descripción
En este artículo aprenderemos lo que es el web scraping, para qué sirve y cómo utilizarlo para extraer todo la información necesaria de una página web
Si te sirve de ayuda, no dudes en compartir!Share on LinkedInShare on FacebookTweet about this on TwitterPin on PinterestShare on Google+

Deja un comentario