Alternativas de Portia para la extracción de datos web

Publicado: 2019-07-15
Mostrar tabla de contenido
¿Cuáles son las ventajas de los web scrapers visuales?
¿En qué áreas se quedan cortos los web scrapers visuales?
¿Qué otras alternativas tenemos?
¿Proveedores de DaaS versus equipo interno?
Conclusión

Portia era una herramienta visual que permitía a los usuarios rastrear sitios web sin tener conocimientos de programación. Era un servicio alojado, pero debido a la disminución del uso de raspadores visuales, se eliminó y ya no se usa en la actualidad. Entonces, ¿cómo usaba la gente a Portia cuando existía? Para usar Portia, debe ingresar el patrón de URL que deben visitarse y luego seleccionar elementos en esas páginas web con gestos de apuntar y hacer clic, o usando CSS o XPath. A pesar de ser fácil de usar, los mayores problemas con Portia fueron los siguientes:

  • Era una herramienta que requería mucho tiempo para controlarla en comparación con otras herramientas de raspado web de código abierto.
  • Navegar por los sitios web era difícil de manejar.
  • Debías mencionar las páginas de destino cuando comenzaste a rastrear para evitar que Portia visitara URL innecesarias.
  • No había forma de conectar una base de datos para guardar los puntos de datos raspados.

¿Cuáles son las ventajas de los web scrapers visuales?

Cuando tenga un requisito de raspado web único, puede usar un raspador web visual, pero no se recomienda usarlo como parte de un flujo de trabajo empresarial. En caso de que tenga un negocio en el que necesite rastrear datos de muy pocas páginas web estáticas, y eso muy ocasionalmente (por ejemplo, una vez al mes), puede conseguir a alguien en su equipo que sepa qué datos se deben rastrear para comprender el funcionamiento de un raspador web visual en cuestión de horas y luego la extracción de datos web de vez en cuando. Los rastreadores web visuales son especialmente útiles para las pequeñas empresas que carecen de un equipo técnico y tienen requisitos mínimos de raspado.

Un rastreador web visual es casi lo mismo que alguien haciendo clic en "inspeccionar elementos" en una página web y copiando y pegando datos del contenido HTML. En cambio, cuando usa un raspador web visual, termina haciendo clic en una parte de la página web y el software copia los datos en la ubicación que elija.

Alternativas a Portia

¿En qué áreas se quedan cortos los web scrapers visuales?

Los raspadores visuales, sin embargo, se quedan cortos cuando tienes que hacer un trabajo pesado serio.

Es posible que deba incluir el raspado de algunos datos como parte de su flujo de trabajo comercial (que debería automatizarse).
Es posible que los datos deban rasparse en cientos o miles de páginas y es posible que deban actualizarse con mucha frecuencia.

Puede haber una necesidad de una transmisión en vivo de datos raspados para un módulo comercial en particular. En la mayoría de los casos anteriores, un raspador web basado en código sería mucho más útil que un raspador visual.

La mayoría de los proyectos de raspado masivo encuentran la necesidad de rastrear una tonelada de páginas web similares a los datos de extracción de datos web sobre diferentes elementos. Estos elementos pueden variar desde información de vuelos en sitios web de reservas electrónicas hasta detalles de productos en sitios web de comercio electrónico. La lógica aplicada en tales escenarios es que intenta comprender el patrón en el que se almacenan los datos en las páginas web utilizando unas pocas páginas web y utiliza un código que no solo puede rastrear páginas con exactamente la misma estructura, sino incluso páginas con una estructura similar. . Además, al raspar todas las páginas disponibles en un sitio web, es posible que deba ignorar las páginas con cierta estructura. Todas estas personalizaciones no son posibles en un raspador visual y, por lo tanto, no se recomienda raspar demasiadas páginas con un raspador visual.

Por otro lado del espectro, debido a los cambios en la apariencia de los sitios web cada pocas semanas o meses, es posible que deba entrenar su web scraper visual cada vez que cambia la interfaz de usuario de un sitio web. Por otro lado, cuando se usa un raspador basado en código, a menudo un cambio en la interfaz de usuario ni siquiera requiere ningún cambio en el raspador, ya que el sitio web estructuralmente puede seguir siendo el mismo. Incluso si hay algunos cambios en la interfaz de usuario que pueden requerir un cambio en el raspador, los cambios suelen ser mínimos y ajustar el raspador a los cambios es bastante simple.

¿Qué otras alternativas tenemos?

Existen muchas alternativas a Portia. Los desarrolladores y los equipos de raspado web de todo el mundo están utilizando lenguajes como Python, R y Golang para la extracción de datos web de páginas web. Se están desarrollando nuevas formas de acelerar el proceso. Por ejemplo, con la ayuda de la programación paralela y el almacenamiento en caché en Golang, usando el paquete llamado Colly, puede usar configuraciones personalizadas como las siguientes:

  1. El número de páginas que desea rastrear simultáneamente en un momento dado.
  2. Profundidad máxima a la que debe llegar el raspador una vez que comienza a raspar desde una página web. (Lo que esto significa es que, si configura la profundidad máxima en 3, rastreará la página superior, irá a una URL encontrada en ella, la rastreará, luego irá a una URL encontrada en esa página y la rastreará también, pero ahora en la tercera página si encuentra una URL, no irá más allá).
  3. Puede configurar una verificación de palabras presentes en las URL, es decir, si una palabra está presente en una URL, entonces la página web en esa URL debe ser raspada. O puede establecer exclusiones: el raspador no debe acceder a las URL con una palabra en particular.

Estos son solo algunos de los ejemplos de los cientos de pequeñas funcionalidades que obtienes cuando construyes un web scraper por tu cuenta.

¿Proveedores de DaaS versus equipo interno?

La mayoría de las empresas que carecen de un equipo técnico, o incluso miembros sin un conocimiento básico de cualquier lenguaje de programación, deberían tratar de no comenzar a crear un equipo interno de scraping. La razón detrás de esto es simple. El dinero que gasta en reclutar desarrolladores y luego hacer que construyan y mantengan un sistema de raspado web completamente nuevo para las necesidades de su negocio sería enorme. Y al final del día, si usted es una empresa pequeña y el web scraping no es el combustible para su negocio (es decir, su negocio no se centra en los datos que rastrea de la web), entonces no tiene sentido construir un equipo interno.

La solución simple, en ese caso, son los proveedores de DaaS que toman sus requisitos y le brindan sus datos en un formato de su elección. Nuestro equipo en PromptCloud se enorgullece de reducir el web scraping a un proceso de dos pasos para empresas y empresas.

Conclusión

Si bien las herramientas visuales son buenas para los equipos comerciales, podemos estar de acuerdo en que el web scraping no es solo una tarea comercial simple. Es una tarea que necesita ser eficiente, rápida y completamente personalizable. Si tiene requisitos de raspado web de gran volumen o desea extraer datos web a una escala mucho mayor, se recomienda utilizar los servicios de raspado web.

Si no es un experto en programación o sus requisitos son complejos, puede usar un proveedor de servicios completamente administrado como PromptCloud para obtener datos limpios de manera automatizada sin problemas técnicos ni aprender ninguna herramienta.