Autores:
Oscar Rojo Martín - zumaia@uoc.edu
Photo by Jordan Nix on Unsplash
El objeto de este proyecto es el de obtener de 5 tiendas on line de ropa infantil detalle de todos los productos que venden. Al final del proyecto obtendremos 5 ficheros csv donde se muestran los productos que cada retail tiene en ese momento.
Se encuentran almacenados en la carpeta data.
Previa a la realización del trabajo, he generado un script para el análisis del fichero Robots.txt al objeto de conocer las páginas y fichero podemos solicitar y cuales no.
Para ejecutar el script:
$ python robots.py
El resultado del análisis de los 5 retails se puede consultar en el fichero robots.md
Basicamente los 5 datasets obtenidos tienen como estructura comun los siguientes campos:
- Url
- Nombre producto
- Preferencia
- Descipción
- Precio
La forma de recopiar los datasets son muy parecidas y en el siguiente orden:
- Obtendo la url raiz de la tienda (contendida en un archivo plano)
- Subtituyo la url por la palabra tienda
- Recorro la raiz inicial en busca de url "hijos"
- Recopilo los diferentes URL en una lista que la limpio de datos innecesarios y elementos duplicados
- Recorro la lista de hijos en busca de nuevas url
- Recopilo las nuevas url y hago nuevamente una limpieza de la nueva lista.
- De esta última lista de url donde se detallan cada uno de los productos, realizo el scraping
- Genero un diccionario seleccionando los campos que más me interesan.
- Por último convierto el diccionario en un dataframe y este en un csv.
En todas las transformaciones y con el fin de preservar la url y el nombre comercial de la empresa retail, aplico el pundo 2
https://twinandchic.com/
https://www.bonpoint.com/es/
https://www.nanos.es/
https://www.bonnetapompon.com/es/es/
https://www.ilgufo.com/eu_en/
El presente proyecto está basado en una conversación con una persona que me indicó que una vez cada mes debia de visitar las páginas webs de estas tiendas y contar el número de nuevos productos y familias que se vendian con cada nueva temporada.
He elegigido CC BY-NC-SA 4.0 ya que: Esta licencia no permite un uso comercial de la obra original ni de las posibles obras derivadas. Además, la distribución de estas obras derivadas se debe hacer con una licencia igual a la que regula la obra original.
- Dataset. Publicación del dataset en formato CSV en Zenodo (obtención del DOI) con una breve descripción.
Para su correcta ejecución recomiendo:
-
Generar una carpeta
$ mkdir -directorio
-
Generar un entorno virtual
en linux$ python3 -m venv /path/to/new/virtual/environment
en windows
c:\>c:\Python35\python -m venv c:\path\to\myenv
-
Instalar los módulos necesarios detallados en el fichero requirements.txt
$ pip install requirements.txt
-
Ejecutar cada un de los ejecutables según la tienda
$ python tienda_#.py
donde # es el número de tienda, desde 0 hasta 1.