La mayoría de clientes que contactan con nosotros solicitan el servicio de extracción de datos web a Excel.
En este artículo voy a comentar cómo documentar una extracción de datos para poder solicitar un trabajo de scraping a cualquier empresa o freelance.
Quiero recalcar que para una recolección puntual de datos, pagar por este servicio suele ser más barato que comprar la herramienta y ponerse a programar la extracción.
Por supuesto, también existe la posibilidad de que el cliente compre la herramienta y use el script de extracción por su cuenta las veces que sea necesario.
No obstante, es importante documentar bien los requisitos que como veremos, es muy sencillo.
Para una extracción de datos simple los pasos a documentar son:
- Página de destino (URL) y datos de acceso a la web.
- Indicar las acciones a realizar.
- Marcado y numeración de los datos a extraer.
Página de destino y datos de acceso
Es indispensable indicar la ruta inicial desde donde empezaremos a capturar la información.
En la mayoría de casos se tratará de una página web y necesitamos simplemente la URL.
En portales que requieran autenticación será necesario facilitar un usuario y contraseña para acceder a la zona privada donde se encuentran los datos.
En el ejemplo que hemos tomado, basta con pulsar sobre un enlace del menú para ir a la página de que nos interesa, no es necesario darse de alta en el portal.
Indicar las acciones a realizar
El segundo paso será indicar si la información se encuentra en un solo lugar, como pueda ser una tabla de datos, o si aparece en más de una página.
Si solo nos interesa una muestra parcial de los datos, como pueda ser una categoría o una ciudad en concreto, lo indicaremos para no hacer peticiones web innecesarias.
En este ejemplo queremos capturar todos los anuncios, según muestra la imagen algo más de 5.000 y accederemos a ellos de forma secuencial.
No vamos a seleccionar ningún dato del listado de anuncios, toda la información necesaria se encuentra en el interior de cada anuncio.
Marcamos y numeramos los datos que queremos extraer
Los campos que queremos extraer son:
- Artículo
- Precio
- Vendedor
- Ubicación
- Teléfono 1
- Teléfono 2
Este directorio tiene los teléfonos ocultos y hay que hacer una pulsación en el botón para que se muestren.
En la imagen vemos como documentarlo, ya que se trata de una acción necesaria para mostrar los datos de interés.
Una vez hemos pulsado el botón aparece el resto de datos y podemos marcarlos y numerarlos.
Con esto podemos dar por terminada la documentación.
Generalmente en un proceso de scraping sencillo el cliente recibe una muestra donde puede validar la información.
Esta muestra es un fichero parcial de lo que se enviará al finalizar el trabajo y nos permite comprobar que la extracción es válida.
Aquí vemos los 6 campos que se solicitaban en la documentación y además, un primer campo (URL) para la verificación manual de la muestra.
Un trabajo de scraping o captura de datos, no suele incluir manipulación de datos. De todos modos, si al recibir la muestra detectamos algún inconveniente, es el momento de comentarlo.
Quizá queremos ver los precios con el formato: 1.200.000 en lugar de 1,200,000.
Manipularemos estos datos una vez finalizada la extracción sin mayor problema.
Por supuesto, no es necesario que la documentación esté impecable a nivel gráfico. Puedes imprimir los pantallazos y hacer las anotaciones a mano, o si estás cómodo con el manejo del ordenador, instalar alguna extensión para Chrome como Lightshot, que te permitirá hacer las capturas y las anotaciones.
¿Cuanto cuesta un servicio de scraping?
Es una pregunta delicada porque depende de muchos factores, empezando por la complejidad del sitio web con el que vayamos a trabajar.
También hay que valorar si es una única extracción o va a realizarse de forma recurrente.
Es habitual que se cobre una tasa de mantenimiento cuando el programa tenga que acceder a los datos de forma periódica.
Aunque compres el script y la extracción, posiblemente tendrás que pagar las actualizaciones de alguna herramienta de software para seguir usándolo en tu equipo, y esto no incluiría las modificaciones en el código si hay cambios en la web sobre la que estamos capturando la información. Esta es la justificación de este pago generalmente mensual.
Y por último, hay que estimar el volumen de datos.
Dependiendo del volumen necesitaremos un extra de recursos como el uso de un servidor dedicado, la compra de proxies, licencias, etc.
En principio, el precio medio de una extracción que no necesite estos extras puede costar alrededor de 200€, por eso es interesante documentarla bien y que el proceso de solicitud y validación no se alargue excesivamente.
Espero que te haya resultado de utilidad y si tienes alguna duda puedes llamarnos para comentar tu caso de forma particular.