Skip to content

Dri4n/aukko_fullstack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Test Fullstack Aukko - Carlos Orostegui

Descripción

La solución se compone de 4 proyectos, estos proyectos son:

  • api
  • data
  • scraper
  • web

Proyecto API

Encargado de entregar las categorias y libros cargados por el servicio scraper.

Proyecto DATA

Encargado la implementación de la libreria SQLAlchemy, contiene los modelos y el contexto principal.

Proyecto SCRAPER

Encargado de obtener los datos desde la web http://books.toscrape.com, se compone principlamente de 2 servicios:

  • BookScraper
  • BookParser

El servicio BookScraper se encarga de leer el html correspondiente a los libros y categorias de la web, este servicio una vez finalizadas todas sus solicitudes guarda los datos en la carpeta data (categories.json y books.json).

El servicio BookParser se encarga de leer los datos recopilados por el servicio BookScraper y cargalos en BD, como caso practico cada vez que el servicio BookParser es utilizado, se eliminan y se carga la metadata de la base de datos, este servicio solo cuenta con lógica de carga y no con lógica de actualización.

Proyecto WEB

Encargado de visualizar los datos obtenidos desde el proyecto API.

Instrucciones

Pre-requisitos

  • Python 3.7

  • Libreria Requests

  • Libreria BeautifulSoup

  • Libreria SQLAlchemy

  • Libreria Flask-RESTful

  • Libreria Flask-Cors

  • NodeJS (v10.9.0) (version recomendada)

Instalación

  • pyp3
sudo apt-get install python3-pip
  • Requests
pip3 install requests
  • BeautifulSoup
pip3 install beautifulsoup4
  • SQLAlchemy
pip3 install sqlalchemy
  • Flask-RESTful
 pip3 install flask-restful
 pip3 install -U flask-cors

Despliegue

Para la ejeución de los proyectos scraper y api, se debe ejecutar desde la ruta base del proyecto.

  • script ejecución proyecto scraper
 npm run scraper
  • script ejecución proyecto api (montado en localhost:3000)
 npm run api

Para la ejecución del proyecto web, se debe ejecutar desde la ruta web/ del proyecto.

  • script ejecución proyecto web (montado en localhost:8080)
  cd web/
  npm install
  npm run dev

Construido con

  • Backend
    • Python 3.7
    • SQLAlchemy
    • BeautifulSoup
    • Requests
    • Flask-RESTful
  • FrontEnd
    • VueJS
    • WebPack
    • ES6

Autor

  • Carlos Orostegui

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published