Maestría en Software Libre – Antecedentes – Estado del arte



Maestría en Software Libre – Antecedentes – Estado del arte

0 0


stella-slides

stella-slides

On Github jorlugaqui / stella-slides

Maestría en Software Libre

Identificación automática de tendencias comerciales a través del análisis de sitios de e-commerce

Implementado: Ing. Jorge Galvis Dirigido: Ing. Liliana Calderon

Antecedentes

"""Quiero una aplicación que permita hacer clic en un botón y me muestre las tedencias comerciales de un sitio de comercio electrónico...""" Liliana Calderón.

Antecedentes

Proyecto enmarcado en el grupo de investigación en tecnologías de la información.

Antecedentes

Estado del arte

Tema Estudio eCommerce, comportamientos, tendencias. "Spink", From E-Sex to E-Commerce: Web search changes.   "Lewandowski", The Influence of Commercial Intent of Search Results on Their Perceived Relevance.   "Long", Enhancing Product Search by Best-Selling Prediction in eCommerce.   "Baeza-Yates/Calderón Benávides/Gonzáles-Caro.", The intention behind web queries. Estado del arte
Tema Estudio eCommerce y clasificación. "Da-sheng", An Efficient Text Classification Algorithm in E-commerce Application. Estado del arte
Tema Estudio Consulta y extracción Web. "Newsha / Sun", Predicting Event-Relatedness of Popular Queries. Ouyang, Dong y Zou. Information Extraction Based on Table Area Locating for E-Commerce Websites. Estado del arte

Marco teórico

¿Que es comercio electrónico?

Marco teórico

¿Que es una tendencia?

Marco teórico

¿Que es una aplicación Web?

Marco teórico

¿Que es una API?

Marco teórico

¿Que es Web Scraping?

Marco teórico

¿Que es un Crawler?

Marco teórico

Problema

¿Ha podido observar tendencias comerciales con respecto a los productos que usualmente compra?

Problema

¿Cómo determinar de forma automática las tendencias comerciales que surgen en sitios de comercio electrónico con presencia en Colombia?

Problema
  • No hay evidencias de software similar desarrollado.
  • ¿Pueden como usuarios de tiendas virtuales percibir tendencias comerciales?
  • Tal vez se hagan identificación de tendencias de forma manual.

Objetivo general

Determinar de forma automática las tendencias comerciales que se registran en sitios de Comercio electrónico.

Objetivos específicos

Establecer el esquema básico de funcionamiento de cuatro (4) sitios Web de comercio electrónico con presencia en Colombia.

Objetivos específicos

Implementar un repositorio dinámico que almacene patrones comerciales con base en el esquema de funcionamiento de los sitios Web seleccionados.

Objetivos específicos

Implementar un algoritmo de inspección y registro estadístico que se apoye en los datos registrados en el repositorio que permita determinar las tendencias comerciales en los sitios de comercio electrónico seleccionados.

Objetivos específicos

Implementar una interfaz Web que permita visualizar las tendencias comerciales.

Objetivos específicos

Justificación

Una aplicación Web (crawler + GUI).

Justificación

Automatización en la identificación de tendencias.

Justificación

Será una aplicación de referencia.

Justificación

Marco legal

Derechos de autor en soportes lógicos.

Marco legal

Creative Commons 4.0 Internacional: Atribución, No Comercial, Compartir Igual.

Marco legal

AGPL 3.0.

Marco legal

Web Scraping.

Marco legal

Método de la investigación

Fases para la implementación del proyecto

Método de la investigación

Muestra de tiendas electrónicas

Método de la investigación

Criterios de selección

Método de la investigación

Técnicas de extracción

Método de la investigación

Mínimos Cuadrados.

Método de la investigación

Herramientas

Ubuntu Server 14.04 de 64 bits

Herramientas

PostgreSQL Server 9.3

Herramientas

MongoDB 2.4.9

Herramientas

Supervisor 3.0

Herramientas

Python 2.7.6

Herramientas

Django 1.7.1

Herramientas

Gunicorn 19.1.1

Herramientas

Nginx 1.4.6

Herramientas

Gunicorn 19.1.1

Herramientas

Scrapy/Numpy/Scipy

Herramientas

Resultados

Esquema de consulta Mercado Libre

								

https://api.mercadolibre.com

Resultados

Esquema de consulta Mercado Libre

Resultados

Esquema de consulta Mercado Libre

Resultados

Esquema de consulta eBay

								

http://svcs.ebay.com/services/search/FindingService/v1

Resultados

Esquema de consulta eBay

Resultados

Esquema de consulta eBay

Resultados

Esquema de consulta Amazon

								

http://webservices.amazon.com/onca/xm

Resultados

Esquema de consulta Amazon

Resultados

Esquema de consulta Amazon

Resultados

Esquema de consulta Linio

								

http://www.linio.com.co/tecnologia/telefonos

Resultados

Esquema de consulta Linio

								

http://www.linio.com.co/slug-del-product

Resultados

Repositorio de datos

Resultados

Repositorio de datos

Resultados

Interfaz de Listados

Resultados

Interfaz de Estadísticas

Resultados

Interfaz de Administración

Resultados

Interfaz de Administración

Resultados

Relación de modelos

Resultados

Código fuente y despliegue

								

http://172.245.180.180:8000/

								

https://github.com/jorlugaqui/stella

Resultados

Distribución de categorías

Sitio Cantidad Mercado Libre 24 Ebay 35 Linio 53 (8) Amazon 39 Resultados

Aplicación

Resultados

Nube de categorías 23-01-2015

Resultados

Nube de categorías 24-01-2015

Resultados

Relevancia 24-01-2015

Resultados

Nube de categorías 25-01-2015

Resultados

Nube de categorías 26-01-2015

Resultados

Proyección de precios

Resultados

Proyección de ventas

Resultados

Proyección de inventario

Resultados

Tendencias

Resultados

Tendencias - Precios

Resultados

Tendencias - Ventas

Resultados

Tendencias - Inventario

Resultados

Tendencias - Precios - Comparación

Resultados

Tendencias - Ventas - Comparación

Resultados

Tendencias - Inventario - Comparación

Resultados

Recomendaciones

Instalar la aplicación en un servidor GNU/Linux, de preferencia Debian (https://www.debian.org/) o Ubuntu (http://www.ubuntu.com/), con una RAM mínima de 2 GB y un disco duro mínimo de 15 GB, con uno o más procesadores por encima de los 1.2 GHz y un ancho de banda mínimo de 512MB mensuales.

Recomendaciones

Programar las tareas de recolección de datos por un periodo superior a 10 días y no mayor a 30, de modo que el método de los mínimos cuadrados tenga suficiente lecturas sobre las cuales pueda operar y a su vez no se genere tráfico innecesario en el sitio objetivo.

Recomendaciones

Preferiblemente agregar sitios Web que cuenten con APIs de consulta.

Recomendaciones

Implementar un script de extracción por cada nuevo sitio agregado.

Recomendaciones

Subir al repositorio del proyecto (https://github.com/jorlugaqui/stella) las mejoras que el lector haya implementado.

Recomendaciones

Trabajos futuros

Agregar contexto al tiempo de lecturas.

Trabajos futuros

Establecer notificaciones por categorías.

Trabajos futuros

Agregar más plataformas de comercio electrónico.

Trabajos futuros

Aplicar más métodos estadísticos a las lecturas obtenidas.

Trabajos futuros

Mejoras en la capa de presentación.

Trabajos futuros

Volver totalmente administrable la agregación de plataformas.

Trabajos futuros

Contacto con las plataformas agregadas.

Trabajos futuros

Conclusiones

Es posible hacer seguimiento de productos de forma automática desde tiendas electrónicas, pero este seguimiento está sujeto a variables como: términos de uso de los sitios Web, herramientas de consulta que ofrezca la tienda y calidad de publicación de ofertas a nivel DOM/HTML.

Conclusiones

Cada plataforma de comercio electrónico tiene una estructura de funcionamiento distinta, que se ve reflejada en la forma como publican sus ofertas, tanto a nivel de HTML como a nivel de sus respectivas APIs.

Conclusiones

Las plataformas de comercio electrónico eBay, Amazon y Mercado Libre ofrecen APIs que permiten la consulta de datos asociados a los productos que ofertan en sus Sitios Web, estas APIs son heterogéneas, dependiendo de la plataforma varía su forma de funcionamiento (campos mínimos para realizar una petición, campos devueltos, etc.).

Conclusiones

En Colombia no existen bases de datos públicas asociadas a las plataformas de comercio electrónico que operan en el país, solo a través de la inspección HTML y del uso de APIs se logra la extracción automática de datos.

Conclusiones

El diseño de scripts para la extracción de datos se debe realizar con la premisa de no sobrecargar con peticiones a los sitios objetivos, ya que usos indebidos pueden generar tráfico innecesario y penalizaciones a los dominios desde donde estos se ejecutan.

Conclusiones

La técnica del Web Scraping es ideal para la extracción de datos desde sitios Web, pero siempre que exista una API en el sitio objetivo es mejor hacer uso de esta.

Conclusiones

Establecer tendencias comerciales sin el acceso directo a las bases de datos donde se almacenan las transacciones es una tarea compleja, sin embargo, desde los datos publicados por las tiendas electrónicas en sus sitios Web o APIs, se pueden establecer comportamientos que evidencien estas tendencias.

Conclusiones

Blibliografía

  • Baeza, Ricardo., & Ribeiro, Berthier. Modern Information Retrieval
  • Baeza-Yates, R., Calderón-Benavides, L., and González-Caro, C. The intention behind web queries
  • Calderón-Benávides, Liliana. Unsupervised Identification of the User’s Query Intent in Web Search
  • Kumar, Sanjay., & Rizvi, SAM. Information Extraction using Web Usage Mining, Web Scrapping and Semantic Annotation
  • Lewandowski, Dirk. The Influence of Commercial Intent of Search Results on Their Perceived Relevance.
  • Long, Bo., & Bian, J., & Dong, Anlei., & Chang, Yi. Enhancing Product Search by Best-Selling Prediction in eCommerce
  • Ouyang, L., & Dong, R., & Zou, B. (2009). Information Extraction Based on Table Area Locating for E-Commerce Websites
  • Schrenk, M. Webbots, Spiders, and Screen Scrapers; A Guide to Developing Internet Agents with PHP/CURL
  • Spink, A., Jansen, B. J., Wolfram, D., and Saracevic, T. From E-Sex to E-Commerce: Web search changes

Gracias

0