{"id":34721748,"url":"https://github.com/drarlian/invesight-back","last_synced_at":"2026-05-09T00:36:50.939Z","repository":{"id":162389851,"uuid":"628657932","full_name":"Drarlian/invesight-back","owner":"Drarlian","description":"O projeto tem como objetivo analisar alguns ativos da bolsa de valores utilizando web scraping. Após a análise, os dados são armazenados, de forma organizada em banco de dados e/ou em uma planilha.","archived":false,"fork":false,"pushed_at":"2025-04-14T17:57:14.000Z","size":118,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-15T23:30:37.030Z","etag":null,"topics":["api-rest","beautifulsoup4","fastapi","google-sheets","mongodb-atlas","motor","openpyxl","python","selenium"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Drarlian.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-04-16T16:22:10.000Z","updated_at":"2025-04-14T17:57:18.000Z","dependencies_parsed_at":"2025-02-21T22:22:11.063Z","dependency_job_id":"8adc7519-0414-4830-a31c-9ac32bf8f757","html_url":"https://github.com/Drarlian/invesight-back","commit_stats":null,"previous_names":["drarlian/projeto_analisa_ativos"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Drarlian/invesight-back","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Drarlian%2Finvesight-back","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Drarlian%2Finvesight-back/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Drarlian%2Finvesight-back/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Drarlian%2Finvesight-back/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Drarlian","download_url":"https://codeload.github.com/Drarlian/invesight-back/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Drarlian%2Finvesight-back/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32580049,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-03T06:36:36.687Z","status":"ssl_error","status_checked_at":"2026-05-03T06:36:09.306Z","response_time":103,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api-rest","beautifulsoup4","fastapi","google-sheets","mongodb-atlas","motor","openpyxl","python","selenium"],"created_at":"2025-12-25T01:48:39.477Z","updated_at":"2026-05-03T18:35:11.266Z","avatar_url":"https://github.com/Drarlian.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# Invesight Backend 🚀\n\nEste repositório contém o backend da aplicação **Invesight**, uma plataforma de análise de ativos financeiros. O backend foi desenvolvido em **Python 3** utilizando o framework **FastAPI** para fornecer uma API RESTful eficiente, com integração ao banco de dados **MongoDB Atlas** e funcionalidades de **web scraping** para obter dados financeiros em tempo real.\n\n## 🛠 Tecnologias\n\n- **Python 3** 🐍\n- **FastAPI** ⚡: Framework para a criação de APIs RESTful rápidas e eficientes.\n- **MongoDB Atlas** 🗃️: Banco de dados em nuvem utilizado para armazenamento dos dados dos ativos e imagens das ações.\n- **Web Scraping** 🌐: Utilizado para obter dados financeiros não disponíveis no banco de dados.\n- **Algoritmos de Busca com Lógica Fuzzy** 🔍: Implementados para realizar buscas rápidas e dinâmicas de ativos financeiros.\n- **Planilhas Excel e Google Sheets** 📊 (não em uso atualmente): Integração com planilhas para exibição de dados obtidos através de web scraping (em versões anteriores).\n\n---\n\n## 📋 Funcionalidades\n\n- **API RESTful** 🔌: A API segue as normas de RESTful para fornecer endpoints de fácil uso e integração.\n- **Conexão com MongoDB Atlas** 🗄️: O projeto se conecta ao MongoDB Atlas para armazenar e acessar dados dos ativos e imagens (logos das ações).\n- **Web Scraping** 🧑‍💻: O backend utiliza técnicas de scraping para buscar dados financeiros de ativos que não estão no banco de dados.\n- **Busca Dinâmica e Rápida** ⚡: Algoritmos de busca com lógica fuzzy são utilizados para realizar buscas rápidas de ativos no frontend.\n- **EndPoints de Ativos do Tesouro Direto** 💰: Embora ainda não utilizados no frontend, a API contém endpoints para obtenção dos ativos do Tesouro Direto, que serão aprimorados quando implementados no futuro.\n\n---\n\n## 🗂 Estrutura de Diretórios\n\nO projeto segue uma estrutura modular e organizada, com pastas e arquivos bem definidos para facilitar a manutenção e expansão. A estrutura básica é a seguinte:\n\n```\ninvesight-backend/\n│\n├── AtivosAPI/\n│   ├── entities/                # Definições dos modelos e entidades\n│   │   └── actives.py\n│   ├── functions/               # Funções de lógica de negócio\n│   │   ├── database_functions/  # Funções para interagir com o banco de dados\n│   │   │   ├── db_actives.py\n│   │   │   ├── db_images.py\n│   │   │   └── db_manipulation.py\n│   │   ├── filter_functions/    # Funções de filtragem de dados\n│   │   │   └── filter_functions.py\n│   │   ├── request_functions/   # Funções de requisições\n│   │   │   └── find_indices.py\n│   │   └── utilities_functions/ # Funções utilitárias\n│   │       └── utilities.py\n│   ├── routes/                  # Endpoints da API\n│   │   └── routes.py\n│   └── web_scrapping/           # Scripts de web scraping\n│       ├── b3_actives.py\n│       └── treasury_bonds.py\n│\n├── PlanilhaExcel/\n├── PlanilhaGoogle/\n├── RasgagemDados/\n├── .env\n├── .gitignore\n├── LICENSE\n├── main.py\n├── old_main.py\n└── requirements.txt           # Dependências do projeto\n```\n\n---\n\n## 🚀 Como Rodar o Projeto\n\n### 🔧 Pré-requisitos\n\n- Python 3.8 ou superior\n- MongoDB Atlas configurado\n- Dependências do projeto (listadas no `requirements.txt`)\n\n### ⚙️ Instalação\n\n1. Clone o repositório:\n\n   ```bash\n   git clone https://github.com/yourusername/invesight-backend.git\n   cd invesight-backend\n   ```\n\n2. Instale as dependências:\n\n   ```bash\n   pip install -r requirements.txt\n   ```\n\n3. Configure as variáveis de ambiente (por exemplo, credenciais do MongoDB Atlas) no arquivo `.env`.\n\n4. Para rodar a aplicação, execute:\n\n   ```bash\n   uvicorn app.main:app --reload\n   ```\n\n5. A API estará disponível em `http://localhost:8000`.\n\n---\n\n## 🤝 Como Contribuir\n\n1. Faça um fork deste repositório.\n2. Crie uma nova branch (`git checkout -b feature-nome-da-feature`).\n3. Faça as modificações necessárias.\n4. Envie as alterações (`git commit -am 'Adiciona nova funcionalidade'`).\n5. Envie a branch para o repositório remoto (`git push origin feature-nome-da-feature`).\n6. Crie um pull request.\n\n---\n\n## 📬 Contato\n\nCriado por **Witor Oliveira**  \n🔗 [LinkedIn](https://www.linkedin.com/in/witoroliveira/)  \n📫 [Contato por e-mail](mailto:witoredson@gmail.com)\n\n---\n\n## 📜 Licença\n\nEste projeto está licenciado sob a licença MIT. Veja o arquivo [MIT License](./LICENSE) para mais detalhes.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdrarlian%2Finvesight-back","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdrarlian%2Finvesight-back","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdrarlian%2Finvesight-back/lists"}