Varias páginas web ofrecen API para descargar información en algún formato estandarizado y así facilitar a usuarios a descargar información desde sus páginas. Las ventajas para empresas como Analyze que descargan información son:
Sin embargo, aunque en la teoría las API deberían ser la opción ideal, en la práctica, en nuestra experiencia, preferimos en muchos casos obviar las API y utilizar técnicas de webscraping de las páginas web.
Nuestra recomendación es para que las empresas hagan un esfuerzo para tener API funcionales y con buen mantenimiento. Algunas empresas creen que es mejor no tener API para evitar que otros puedan acceder fácilmente a los datos. Sin embargo esa es una solución del tipo “sillón de don Otto”. Al no exister API, los interesados harán webscraping a las páginas web, lo cual implica un costo mayor para los dueños de la páginas web. El webscraping genera un mayor uso de recursos de procesamiento de los servidores de la página web que en comparación con la API. El procesamiento de una página web generalmente también incluye paginación, cargar imágenes, generar el html, cargar archivos JS, varias cargas AJAX. Ciertamente existen metodologías para el que hace webscraping para reducir esto, sin embargo scrapers novatos (o al utilizar softwares de webscraping existentes en el mercado) no necesariamente las aplican.
Por ejemplo, casi todas las páginas muestran la información en máximo 20 o 50 ítems por página y no existe la opción de mostrar todas en una carga. Esto implica tener que cargar varias veces la página web, cada vez con otros 20 ítems, sobrecargando el servicio web. Desde el punto de vista del programador webscraping, el único cambio es un línea de código adicional con una expresión while().
Al hacer webscraping, también se perturban métricas propias de las páginas web. Por ejemplo se aumenta artificialmente el número de visitas a cada página o se está pagando por publicidad web por páginas solamente vistas por “robots” de webscraping.
Mantener API actualizadas y completas puede generar beneficios, ya que los que quieran obtener información utilizarán las API y no sobrecargarán el servicio web ( y no genera estadísticas falsas). Tratar de poner barreras al webscraping puede evitar que amateurs puedan hacer el webscraping, pero no son barreras para empresas con experiencia. El mayor impacto será sobrecargar el servicio web.