Tabla de contenidos
El proyecto es un software que pueda extraer, transformar y cargar los datos de los negocios de la plataforma YELP.
- En primer lugar, descubrir cómo YELP presenta los datos delos negociosy modelar esta estructura de datos para que sepamos cómo interactuar con ella. YELP parece tener el concepto de business, event, category, etc. y debemos descubrir y documentar estos esquemas y relaciones de datos. (Pueden usar esquemas, diagramas, según se considere necesario)
- En segundo lugar, debemos desarrollar una forma de extraer la información de YELP de los restaurantes de la cuidad de Asheville.
- Posteriormente se debe extraer los datos del restaurante por el ID del restaurante.
- Se debe procesar los datos para que sea almacenada en una tabla donde se muestrela información del restaurante.
- Los datos extraídos deben ser en formato jsony deben ser subidos a un repositorio en Github al igual que la documentación que se debe generar del punto 1.
En esta seccion se especifica las herramientas tecnicas con las que se realizo el proyecto
En este proyecto se utilizo el API de la plataforma YELP, esta plataforma ofrece una serie de endpoints para consultar datos estructurados en JSON.
Dejo los links de la documentacion abajo
Los datos de los endpoints de arriba son extraidos en forma JSON, y tienen la siguiente estructura:
Nuestro proyecto tiene la siguiente estructura de folders:
|-- Python_Yelp_Request_Data_Cleaning
| |-- APP
| | |--Python_Yelp_Request_Data_Cleaning.ipynb
| | |--token.txt
| |-- Datos_Procesados_CSV
| | |--Restaurantes.csv
| | |--Restaurante Corner Kitchen.csv
| |-- Datos_Sin_Procesar_JSON
| | |-- restaurante 3nu2FbuN__5LqOaGDRihTQ.json
| | |-- Restaurantes.json
| |-- Esquema_API
| |-- README.md
La nomenclatura utilizada para los folders es SNAKE_CASE La nomenclatura utilizada para los files es Pascal CASE
El proyecto en realidad corre sobre un Jupyter notebook
en un Google Colab
, preferiblemente se debe de correr en esa plataforma. sin embargo tambien se puede correr desde un ambiente local utilizando ANACONDA
.
Adjunto una guia abajo para la instalacion de ANACONDA
python setup.py install
conda build --python {PYTHON_VERSION} meta.yaml
# ensure `twine` is install
pip install twine
# package source code
python setup.py sdist
twine upload dist/*
# ensure conda-build and anaconda-client are installed
conda install conda-build anaconda-client
# build package for a specific python version
conda build --python {PYTHON_VERSION} meta.yaml
# upload to Anaconda Cloud
cd $HOME/miniconda3/conda-bld/
anaconda upload */PACKAGENAME-VERSION_*.tar.bz2
pip install PACKAGENAME
conda install PACKAGENAME
-
Abrir ANACONDA o COLAB
-
Clonar el REPO
git clone https://github.com/your_username_/Project-Name.git
-
Abrir el Jupyter Notebook y abrir el archivo:
APP/Python_Yelp_Request_Data_Cleaning.ipynb
-
Crear un Token API Key
APP/token.txt
Unicamente se necesita poner a correr las celdas de los Scripts y eso va a generar archivos CSV
Las contribuciones son lo que hacen que la comunidad de código abierto sea un lugar tan increíble para aprender, inspirar y crear. Cualquier contribución que haga es muy apreciada.
- Clone el proyecto
- Cree un branch con la siguiente estructura: (
git checkout -b feature/AmazingFeature
) - Haga comentarios de sus cambios (
git commit -m 'Add some AmazingFeature'
) - Haga push del branch (
git push origin feature/AmazingFeature
) - Abra un Pull Request
William Aguilar - @Github - [email protected]
Project Link: https://github.com/william2215/Python_Yelp_Request_Data_Cleaning/