No project description provided
Project description
Benchmark Indexes - Web Scraper Framework
Descrição
Este projeto é um framework modular para a captura, processamento e análise de dados históricos de índices de mercado, como IBOVESPA, CDI, entre outros. Ele é projetado para ser flexível, permitindo a adição de novos índices e fontes de dados com facilidade.
Estrutura do Projeto
benchmark_indexes/
├── data/ # Diretório para armazenamento de dados
│ ├── bronze/ # Dados brutos extraídos
│ ├── silver/ # Dados intermediários
│ ├── gold/ # Dados tratados
├── indexes/ # Módulos de captura de índices
│ ├── ibov/ # Módulo para o índice IBOVESPA
│ ├── cdi/ # Módulo para o índice CDI
│ ├── index_config.json # Configurações globais de índices
├── notebooks/ # Notebooks para análise e exploração
│ ├── análise_indices.ipynb # Análises gerais dos índices
├── LICENSE # Licença do projeto
├── README.md # Documentação do projeto
Funcionalidades
-
Scraping Modular:
- Captura de dados de múltiplos índices de mercado (IBOV, CDI, etc.).
- Configuração automatizada do WebDriver com
webdriver_manager.
-
Transformação e Análise de Dados:
- Processamento de dados para análise (ETL).
- Estrutura flexível para armazenamento em níveis (bronze, silver, gold).
-
Exploração com Jupyter Notebooks:
- Notebooks para análise interativa e geração de insights.
Requisitos
- Python 3.8+
- Bibliotecas:
seleniumwebdriver_managerpandasnumpymatplotlib
Instale as dependências com:
pip install -r requirements.txt
Uso
Executando o Scraper para um Índice
- Configure o módulo correspondente ao índice desejado (ex.:
ibov/ibov_config.json). - Execute o scraper:
python indexes/ibov/IbovWebScrapperB3.py
Análise no Jupyter Notebook
- Navegue até o diretório
notebooks. - Abra o notebook de análise no Jupyter:
jupyter notebook análise_indices.ipynb
Logs
Os logs do sistema são gerenciados pelo LoggerUtil. Você pode personalizar os níveis e locais de armazenamento no código:
logger = LoggerUtil.get_logger("IndexLogger")
logger.info("Este é um log de exemplo.")
Arquitetura do Framework
O projeto segue o padrão ETL (Extract, Transform, Load):
- Extract:
- Captura de dados brutos das fontes configuradas (web scraping, APIs, etc.).
- Transform:
- Processamento e padronização dos dados para análise.
- Load:
- Armazenamento dos dados tratados em níveis específicos (bronze, silver, gold).
Configuração do WebDriver
A configuração do WebDriver é gerenciada pelo WebDriverUtil, com suporte para:
- Cache de drivers para evitar downloads desnecessários.
- Logs detalhados para rastreamento de erros.
Adicionando um Novo Índice
- Crie um diretório para o índice em
indexes/. - Adicione um arquivo de configuração JSON para o índice:
{ "module": "CdiApiWrapper", "description": "Módulo para captura de dados do CDI via API do BACEN.", "version": "1.0.0", "author": "Seu Nome", "indexData": { "indexName": "CDI", "indexSource": "BACEN", "indexSourceReference": "https://bacen.gov.br", "indexDocumentation": "https://bacen.gov.br/docs" } }
- Implemente o scraper utilizando as classes utilitárias disponíveis.
Contribuindo
Contribuições são bem-vindas! Por favor:
- Faça um fork deste repositório.
- Crie um branch para sua feature:
git checkout -b minha-feature
- Envie suas alterações via pull request.
Licença
Este projeto é licenciado sob a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file data_market_index_fetcher-0.1.16.tar.gz.
File metadata
- Download URL: data_market_index_fetcher-0.1.16.tar.gz
- Upload date:
- Size: 13.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.5 CPython/3.10.0 Windows/10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
10e8314d84b66fadd16edde8fc4c6145d4207919111982bed2b2320155148c12
|
|
| MD5 |
941399f34cf737ed597cc04ca5ab600e
|
|
| BLAKE2b-256 |
03a49d23d4e5c37ff2bc47b5635208b6a18e31b827238d1ba330f74542da7ad7
|
File details
Details for the file data_market_index_fetcher-0.1.16-py3-none-any.whl.
File metadata
- Download URL: data_market_index_fetcher-0.1.16-py3-none-any.whl
- Upload date:
- Size: 17.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.5 CPython/3.10.0 Windows/10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
76a9110a06906374851b9d7725ff69fe77b3b6435bb1bdec0c8e35be77bae1f8
|
|
| MD5 |
7fca50f4e234dc6995b472508d241ef7
|
|
| BLAKE2b-256 |
4f14f6dd8e3c9aafdfc16814ec92f3fc482505f766eee3a49ef91f30626b979d
|