Skip to content

Organização de Dados Públicos

Ezequias Rocha edited this page May 21, 2019 · 2 revisions

Organização de Dados

SUA VIDA COM DADOS PÚBLICOS EM ORDEM COM POSTMAN

É bem perceptível que nossa vida com dados mudou do final dos anos 90 pra cá. Antes nossos problemas estavam circunscritos dentro de um sistema que tentava criar uma única visão da verdade. Sistemas cada vez mais robustos começaram a surgir e cada dia ficou mais difícil conhecer a verdade.

Este artigo não tem por finalidade falar de sistemas complexos mas sim de dados complexos. Fomos inundados por conjuntos de dados armazenados por diversas fontes de dados confiáveis mas com metodologias distintas. O mundo dos dados continua mantendo a importância de uma única fonte de verdade que podem dar margens a diversas interpretações e por conseguinte uma luta enorme para interpretar os dados da maneira mais fidedigna. Hoje porém temos não uma mas diversas fontes da verdade na sua estratégia de dados, que por sua característica rica e abundante podem nos levar a uma única conclusão. Interpretar múltiplas fontes da verdade podem nos deixar loucos mas com certeza nos levam a um caminho comum.


Neste artigo meu desafio é encontrar uma forma de organizar nossa vida, a de analistas e cientistas de dados de modo que não sejamos inundados por tanta informação que não consigamos emergir. Gostaria inicialmente de dar os parabéns a equipe de dados abertos do governo do Brasil que faz um trabalho incrível e nos alimenta de informações enriquecedoras diariamente. Eles não só disponibilizam os dados para download como disponibilizam serviços que podemos consultar em tempo real e diariamente sem a necessidade de termos que baixar os dados dia após dias. Tentarei mostrar essas e outras fontes de dados como podemos por ordem na casa e preparar nossos sistemas para alimentar nossos lagos de dados amados.

1. O que são dados abertos

De acordo com o portal dados.gov.br dados são abertos são quando qualquer pessoa pode livremente acessá-los, utilizá-los, modificá-los e compartilhá-los para qualquer finalidade, estando sujeito a, no máximo, a exigências que visem preservar sua proveniência e sua abertura. Isso geralmente é satisfeito pela publicação dos dados em formato aberto e sob uma licença aberta. Para saber mais clique aqui.

2 . As fontes

Irei me ater a três a quatro fontes principais de dados. É certo que existem inúmeras fontes que podemos nos servir mas prefiro fixar o escopo nestas fontes. São elas:

  • IBGE
  • dados.gov.br
  • Mercado Financeiro
  • Congresso Nacional
  • Senado

3. O que é uma API e porque ela põe sua vida em ordem

Uma API é um acrônimo de Interface de Programação Integrada e no frigir dos ovos é um conjunto de programas que torna a intercomunicação entre sistemas transparente e seguro. Dispacho de webservice APIs funcionam como garçons que entregam produtos para dois sistemas que não se interessam pela complexidade um do outro.Toda API possui a sua documentação, que informações eu devo passar para ela para ter o que quero e quais são os canais que estão disponíveis para consumo. Você irá encontrar diversas fontes de informação sobre APIs mas o melhor mesmo é imergir em uma API de algum fornecedor e começar a tirar proveito dos dados sem ter que abrir sites e mais sites. Assim como peças de precisão são encaixáveis a apenas a sua complementar as APIs funcionam como pontos concentradores de solicitação e despacho de dados entre sistemas.

4. A paginação

Em geral quando você faz um download de dados terá toda a informação disponível de um conjunto de dados e para ter informação atualizada de novo terá que voltar e refazer o download em outro momento. Quando trabalhamos com APIs em geral devemos informar o que realmente queremos, qual o tamanho da informação que será trafegada pela rede e como devemos navegar para pedir informação complementar (entre páginas).

5. Como o Postman funciona

Primeiramente sugiro que, se você trabalha com dados diariamente, baixe o postman e comece a desfrutar dos benefícios deste software e dessa comunidade incrível.

Após a instalação você pode iniciar o Postman imediatamente. Gostaria de lhes apresentar como é simples a interface do Postman. Dissecando tela principal do Postman

O método GET

O método get GET de uma requisição http e consecutivamente para chamadas REST é o mais utilizado de toda a web. Nele é possível realizar uma consulta direta a um recurso disponibilizado pela API que você deseja trabalhar. A anatomia de uma requisição web é demonstrada no gráfico abaixo:

Antes de tudo é necessário que seja identificada a fonte de dados que desejamos consultar com o Postman. CAMARA.LEG.BR

Vamos iniciar com uma fonte de dados que gera informação de alta qualidade pois diz respeito às leis que iremos seguir no futuro. Falo da fonte de dados abertos da Câmara dos Deputados do Brasil. A documentação é a melhor que vi até o momento. Meus parabéns a toda a equipe de dados abertos da câmara dos deputados. Trabalho excelente.

Diversos tipos de informação podem ser consultados a partir da base de dados abertos da câmara, são eles:

Coleções de dados da Câmara dos Deputados. Pouca gente sabe mas tudo que ocorre na câmara é muito bem documentado, gastos com o parlamentar, votações, discursos, etc. Tudo isto são subsídios de grande valor para quem deseja trabalhar com um grande volume de informações e com inteligência artificial.

Iremos investigar alguns conjuntos de dados neste artigo vamos começar: Primeiramente temos que identificar onde está toda a documentação de dados abertos da câmara, o que pode ser facilmente acessado pelo site https://dadosabertos.camara.leg.br/swagger/api.html

Aqui você encontra uma rica lista de recursos que podem ser acessados mas vamos por partes. Vamos chamar o primeiro conjunto de dados que nos é apresentados, os blocos parlamentares. Você sabe quais são os blocos parlamentares? Não então vamos para o postman perguntar e saberemos de uma vez por todas.

Recursos disponíveis para serem consultados relativos a blocosClique no Try it out para ver como é montada a chamada para o recuso de blocos parlamentares.

Após clicar no botão Try it out (ou Tente aqui) você será apresentado a um formulário na qual poderá informar alguns parâmetros antes de executar a chamada ao serviço. A tela apresentada será muito semelhante a esta aqui abaixo:

Tela de parâmetros da consulta.

Após informar os parâmetros desejados o usuário poderá clicar no botão execute para visualizar como foi montada a chamada e como será o resultado da saída de dados. Supomos que queremos ver apenas a página 1. Desta forma deve-se informar o número da página que se deseja consultar e pressionar o botão Execute. Obs: Recomendo que sempre trabalhe com o formato de saída "application/json" pois é o formato padrão de apis RESTful. A saída da execução do botão Execute será apresentada semelhantemente a imagem abaixo (nelas será apresentadas informações de como realizar a chamada, o código de resposta, o cabeçalho da resposta e claro os dados de resposta):

Agora podemos ir ao Postman naturalmente e inserir o conteúdo contido no campo Request URL do formulário de respostas da página da câmara. Agora no postman é só colar o conteúdo: https://dadosabertos.camara.leg.br/api/v2/blocos?pagina=1&ordem=ASC&ordenarPor=nome e clicar no botão Send do Postman.

Agora o Postman lhe mostrou o retorno do recurso e em especial para este recurso nos é mostrados metadados relativos aos blocos, indicando que existem 15 páginas a serem consultadas.

Você pode também utilizar-se do parâmetro Legislatura, que indica qual a legislatura você deseja consultar. No exemplo abaixo buscamos os dados dos blocos parlamentares da legislatura 55 que foi a anterior a que tomou posse em 2019. https://dadosabertos.camara.leg.br/api/v2/blocos?idLegislatura=55&pagina=1&ordem=ASC&ordenarPor=nome


Outras consultas podem ser realizadas com base nos recursos disponibilizados pela câmara no momento em que você for acessar. Boa mineração!


Agora iremos falar também dos dados agregados do IBGE. Eu já fiz algumas configurações para acessar alguns dados específicos do rico conjunto de dados do IBGE como você pode ver na imagem abaixo:

Acessando o caminho disponibilizado pela documentação da API do IBGE chegamos a seguinte URL: https://servicodados.ibge.gov.br/api/v3/agregados

Deste modo podemos pressionar o botão Send para iniciar nossa primeira requisição web para o consumo de dados via Postman.

Ao efetuarmos nossa primeira requisição observamos que o retorno padrão dessa requisição para o recurso agregados é uma estrutura de dados contendo o seguinte padrão (arquivo json) Estrutura da saída do serviço "agregados" do IBGE - Em destaque os indicadores agregados do Cadastro Central de Empresas - CL Estando de posse deste índice de indicadores é possível realizar uma segunda consulta informando que agregado deseja-se obter mais detalhes. Você deverá identificar na documentação como encontrar dados relativos ao agregado que deseja. Irei expor um exemplo para que possa dar prosseguimento a consulta dos seus dados com o seguinte exemplo: https://servicodados.ibge.gov.br/api/v3/agregados/6727/variaveis/all?localidades=BR Esta requisição irá chamar o agregado 6727 (que é Taxa de Investimento) e por localidade (no caso o Brasil). É possível identificar as localidades de consultas através do serviço: Localidades por Agregado Abaixo exponho o resultado da consulta da taxa de investimento solicitado mais acima.

Para essa e para tantas outras formas de cousulta os dados abertos estão aí para que seja possível organizar seu acesso aos dados. Estruturalmente recomendo que crie um Time no Postman e diversas separações por fontes de dados conforme demonstrado nas imagens abaixo: Organização do workspace por timesAproveito para compartilhar um exemplo de estruturação de pastas para que a organização seja feita da melhor forma possível para você que está iniciando com o Postman.

Estrutura de pastas por fonte de dados e datasets.A organização dos dados se faz necessária para que seu desempenho seja maximizado e que outras pessoas possam tirar proveito dela.

Link de coleções Postman

Continue trabalhando com dados mas de maneira organizada. Dessa forma você ganhará tempo, o único ativo mais importante que seus dados.

Espero ter ajudado de alguma forma para que você conheça um pouco mais sobre coleta de dados públicos e sobre organização de dados. Assim que tiver mais tempo irei incrementar esse material. Leiam as referências no final da página.

Obrigado a todos pela colaboração


AGRADECIMENTOS

Gostaria de agradecer por este post a todos os cientistas de dados e da computação que de alguma forma nos ajudam a sermos mais produtivos a cada dia. Agradeço também em especial a equipe de dados abertos da câmara dos deputados mais na pessoa de Fabrício Rocha que me incentivou a desenvolver este material. Gostaria de agradecer também ao Frederico Oliveira de Paula, da CGU, pelo pronto atendimento de minhas dúvidas relativas ao portal da transparência.

REFERÊNCIAS

  • Início - Portal da transparência - Dados do Portal Você pode baixar os dados do Portal da Transparência para fazer seus próprios cruzamentos, gráficos e…www.portaldatransparencia.gov.br
  • Bem vindo - Portal Brasileiro de Dados Abertos - A ANP deu início hoje (3/12) a uma consulta pública, disponível por 90 dias, que busca receber dos cidadãos…dados.gov.br
  • brasil.io - https://brasil.io/api/datasets Dados Abertos da Câmara dos Deputados
  • Lista com identificadores e informações diversas sobre as reuniões, sessões, audiências, seminários e outros eventos…dadosabertos.camara.leg.br
  • Serviços de Dados Abertos - Veja também a descrição dos recursos em Swagger UI .legis.senado.gov.br Bitcoin Price Index API - CoinDesk
  • CoinDesk provides a simple API to make its Bitcoin Price Index (BPI) data programmatically available to others. You are…www.coindesk.com
  • Swagger UI - www.transparencia.gov.br
  • https://servicodados.ibge.gov.br/api/docs/agregados?versao=3

**Ezequias Rocha **é Desenvolvedor BI na Sin Comunicação e está realizando MBA em Business Intelligence e Big Data na Unipê - Centro Universitário João Pessoa.

Clone this wiki locally