Esta página tem como finalidade documentar o processo de coleta dos dados oriundos da página de Projeções de Indicadores “Longo Prazo” e do “Cenário Brasil” disponibilizados mensalmente na seguinte página web:
A extração dos dados foi realizada utilizando linguagem de programação Python com framework Spark em um Cluster Databrics da Dexco.
Este processo realiza apenas a coleta das planilhas em formato Excel, realiza a limpeza e pivoteamento dos dados e por fim os armazena na camada “bronze” do Data Lake.
Devido ser um processo que envolve acessar uma página Web, realizar download de planilhas em formato Excel (.xlsx), há a grande possibilidade de o processo mudar (seja a URL acima, formato de navegação da página, endereço de download do arquivo e também formatação/reposicionamento de células dentro da planilha) devendo haver um constante monitoramento e ajuste do código pela equipe da Dexco.
Este documento visa destacar abaixo os principais pontos do processo de coleta do Itaú Projeções de “Longo Prazo” e “Cenário Brasil”
Resumo do Processo:
Mensalmente o Itaú BBA divulga através da página () relatórios em formato Excel (.xlsx) de indicadores financeiros, sendo:
Longo Prazo
Cenário Brasil
A disposição da página, acessado em 16-Junho-2022, é a seguinte:
O processo desenvolvido em PySpark, acessa esta página acima, e realiza o click em 2 momentos, um sobre o link “baixar excel” na seção Longo Prazo - {nome do mês} {ano corrente}, e depois o mesmo é realizado no link “baixar excel” da seção Cenário Brasil - {nome do mês} {ano corrente}.
Uma vez os arquivos realizados download no diretório /tmp/ do Cluster Databrics, é feito a abertura do arquivo e baixado duas abas de cada um dos arquivos
Longo Prazo: (Brasil e Brasil_Trimestral)
Cenário Brasil: (Brasil - Mensal e Brasil - Trimestral)
É feito a coleta dos dados contidos nas Tabelas das abas acima, e convertido para um Dataframe, realizado o tratamento dos cabeçalhos, removendo linhas e colunas vazias, substituindo valores em branco por 0, e ao final pivoteando a tabela em linhas, para enfim armazenar em tabelas da camada Bronze do Data Lake da Dexco.
Databricks:
Relação de Jobs x Notebooks que compõem o processo:
Job | Parâmetros | Periodicidade | Notebook | Repositório |
---|---|---|---|---|
coletor_itau_projecao | { "base_url": "https://api.machina.tendencias.com.br/query", "database": "inteligencia_mercado_bronze", } | A cada 5 dias (dia 1, 6, 11, 16, 21, 26 | coletor-api-tendencias-bronze | https://bitbucket.org/duratex/analytics-databricks-inteligencia-mercado.git |
Tabelas:
Lista de tabelas que compõem o processo:
inteligencia_mercado_bronze.tendencias_indicadores_base (Tabela contendo os dados / indicadores da api da Tendências) | ||||||||
---|---|---|---|---|---|---|---|---|
Field | Key | Not Null | Partition | Element | Type | Size | Decimal | Description |
ticker | Não | Não | Não | string | Identificador do indicador gerenciado pela tendências | |||
descricao | Não | Não | Não | string | Descrição do indicador | |||
dt_referencia | Não | Não | Não | date | Data de referência do indicador | |||
valor | Não | Não | Não | double | Valor do indicador | |||
sn_dessazonalizado | Não | Não | Não | boolean | Indica se o dado é ou não dessazonalizado | |||
dt_carga | Não | Não | Não | date | Data da carga dos dados |
0 Comments