https://github.com/rafpyprog/teste-cognitivo
Teste backend Cognitivo.ai
https://github.com/rafpyprog/teste-cognitivo
Last synced: 8 months ago
JSON representation
Teste backend Cognitivo.ai
- Host: GitHub
- URL: https://github.com/rafpyprog/teste-cognitivo
- Owner: rafpyprog
- Created: 2019-04-09T15:03:11.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2022-12-08T04:57:51.000Z (over 3 years ago)
- Last Synced: 2025-02-26T11:19:01.212Z (over 1 year ago)
- Language: Jupyter Notebook
- Size: 381 KB
- Stars: 0
- Watchers: 3
- Forks: 1
- Open Issues: 3
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# Teste Cognitivo.ai
# Requerimentos
* Python >= 3.6
* Instalar as dependências: pip install -r requirements.txt
* Arquivo credentials.json com as credenciais de acesso para a API Twitter e Amazon RDS
# Descrição
O código da rotina está no Jupyter Notebook [analise-explotoria.ipynb](https://github.com/rafpyprog/teste-cognitivo/blob/master/notebooks/analise-exploratoria.ipynb). Esta forma de apresentação
foi escolhida por permitir explicitar de forma mais clara o processo de desenvolvimento. O pacote /scr contém as principais funções
utilizadas, possibilitando a reutilização do código e a independência do ambiente de notebooks.
## Banco de Dados

O banco de dados utilizado é uma instância do PostgreSQL hospedada na AWS RDS, ampliando as possibilidades de integração e escalabilidade do processo.
## API

Para acesso aos dados em formato JSON, foi criada uma API utilizando Flask e hospedada no Heroku.
* Repositório: https://github.com/rafpyprog/topmobileapps
* Aplicação: https://topmobileapps.herokuapp.com/
## Limitações e possíveis melhorias
* Tratamento dos nomes dos aplicativos para aumentar o número de resultados encontrados, uma vez que nem sempre as citações utilizam
o nome completo do aplicativo.
* Parametrização da API para receber o nome da tabela a ser buscada no banco de dados.
* Para implementação rápida foi utilizado apenas os limites disponíveis na API gratuita do Twitter, é possível obter mais dados
utilizando a API paga, ou ainda armazenando os dados utilizando o endpoint de streaming.
* Testes