Accede a todo EDteam con un único pago¡Sube a premium!

Web scraping

Hoy en día en el mundo de la tecnología y la programación existen muchos rumores, malos conceptos y muchos expertos que no lo son. 

Diseño web
4 minutos
Hace 7 años
Web scraping

Hoy en día en el mundo de la tecnología y la programación existen muchos rumores, malos conceptos y muchos expertos que no lo son. 

El tema de la seguridad informática y el de obtener información de una red, un sitio web o una red social siempre ha tenido rumores y ciertas leyendas de como se hace. Uno no busca obtener información con el objetivo de afectar a una compañía, sino que existen diversas áreas de conocimientos  que se dedican a ayudar a mejorar la seguridad o automatizar tareas. Una técnica que se puede utilizar para lo mencionado es el web scraping.

El Web scraping es una técnica que mediante software nos va a permitir extraer información de sitios web. Por ejemplo en programación nos podría interesar saber si las etiquetas están bien cerradas, si están bien colocadas, etc. En SEO nos puede interesar el lago de los textos, alt de las imagenes, etc. En Marketing nos puede interesar el contexto de algunas palabras o la cantidad de repetición. En seguridad informática nos pueden interesar los enlaces de la pagina, referencias de sitios, tamaños de archivo, tipos de archivos, etc. En resumen, el web scraping es una herramienta para cualquier área del conocimiento relacionada con el desarrollo web.

El web scraping tiene como uno de sus principales objetivos generar orden partiendo de un caos pues en la mayoría de los datos podremos observar que la información se acomoda por bloques, lo que significa que tendremos que aplicar ciclos, condicionales y otras acciones de la programación para dar una estructura y formato a la información.

De hecho el web scraping no solamente trabaja con un sitio web, pueden trabajar con 2 o más sitios para realizar en algunos casos, por ejemplo, comparaciones de precios. Esto ya te debe sonar muy familiar debido a sitios famosos que se dedican a realizar la búsqueda del vuelo de avión mas barato, los hoteles mas baratos, etc. El web scraping es en la mayoría la técnica que se utiliza para automatizar esta tarea.

El web scraping tiene 2 actores importantes: HTTP y HTML.

HTTP es el actor que un principio nos ayuda a ciertas actividades, por ejemplo estado de la pagina, mensajes y otros puntos muy precisos y muy técnicos.

HTML es el lenguaje en el que están las paginas y por lo tanto es el lenguaje que debemos entender para saber que es lo que está pasando en una web.

Así que mi recomendación es que antes del web scraping es conocer el protocolo HTTP y el lenguaje HTML. Entre más se conozcan estas tecnologías mas cosas podrás obtener al utilizar el web scraping.

Hablemos de algo más técnico, los conocimientos técnicos recomendados para hacer web scraping:

REGEX, regex o expresiones regulares son algo que vamos a necesitar siempre que queramos poder trabajar con cantidades grandes de datos y es la forma en muchas ocasiones mas sencilla de obtener información, regex podría solucionar cosas así:

  • Encontrar palabras que inicien con P y terminan con A
  • Encontrar palabras que tengan tres vocales.
  • Encontrar palabras que sean plurales y ademas inicien con las vocales

Con regex podremos decir que podremos encontrar cualquier cosa, lo importante es saber como se busca.

Visualización de la información, este conocimiento es de los más complejos ya que depende de las necesidades del proyecto, puede ser que en un proyecto solo necesitamos un reporte, en otros gráficas y así dependiendo de las necesidades vamos a encontrar diferentes panoramas.

Lenguajes de programación para hacer web scraping.

Existen siempre diferentes opciones para hacer una cosa, pero una tendencia por las características de la tecnología hoy en día y son dos lenguajes los que están ganando: Python y Perl

Python y Perl están cada día colocandose como los lenguajes favoritos para aplicar las técnicas de scraping en el mundo del software, aunque existen herramientas en el mundo del software que lo hacen y lo hacen muy bien, mucha gente y empresas optan por realizar las suyas ya que las que existen son muy caras y la mayoría del web scraping que se hace tiene que tener un alto nivel de personalización y eso aun es complicado.

Así que si te interesó el tema de web scraping, mi recomendación es: Aprender sobre HTTP y HTML, estudiar las expresiones regulares y decidirte por Python o Perl para realizar tus primeros ejemplos.

Comentarios de los usuarios

Pregunta a ChatEDT