O que são APIs e como utilizá-las no Python?

Utilizar APIs para coletar dados online pode acelerar e automatizar significativamente o processo de análise de dados. No lugar de baixar planilhas de Excel manualmente, podemos utilizar uma API para importar os dados online através de código!

Diversas bases de dados hoje em dia possuem APIs para livre utilização, como Banco Central, Portal de Dados Abertos, IBGE e outras. Apesar de cada API possuir suas particularidades, todas elas funcionam de maneira semelhante. Dessa forma, entender os fundamentos sobre APIs é importante para conseguir atender as demandas de análises de dados diversas no dia a dia.

Neste artigo, explicamos intuitivamente o que são APIs, como funcionam e mostramos um exemplo em Python de utilização.

Aprenda a coletar, processar e analisar dados na formação de Do Zero à Análise de Dados com Python.

Entendendo APIs com uma analogia

Em termos simples, podemos entender uma API como um garçom em um restaurante atuando como um intermediário entre o cliente e a cozinha.

O cliente faz o pedido ao garçom e este repassa à cozinha. A cozinha prepara o pedido para o garçom retirar e entregar ao cliente. APIs funcionam basicamente da mesma forma.

  • Cliente = Cliente (i.e., usuário solicitante, navegador, app);
  • Garçom = API (i.e., Application Programming Interface, comunicação entre cliente e servidor);
  • Cozinha = Servidor (i.e., processa pedido, entrega uma resposta)

Em termos práticos, APIs são muito utilizadas para transmissão de dados e usamos pacotes e funções de linguagens de programação para:

  1. Fazer uma requisição para a API (i.e., apontar uma URL base e parâmetros/filtros da requisição de dados);
  2. Obter uma resposta da API (i.e., resultado bem/mal sucedido, conteúdo/corpo);
  3. Transformar a resposta em um objeto da linguagem (i.e., de XML/JSON/etc. para uma tabela de dados).

Exemplo prático: API do Banco Central

Sistema Gerenciador de Séries Temporais (SGS) é uma API para coletar dados do BC. Nessa página está a documentação de como usar a API para nosso exemplo.

URL base é: https://api.bcb.gov.br/dados/serie/bcdata.sgs.{codigo_serie}/dados?formato=json&dataInicial={dataInicial}&dataFinal={dataFinal}

E os parâmetros básicos disponíveis são:

  • {codigo_serie}: é o código da série temporal a ser coletada (i.e., coloque “1” para obter a “taxa de câmbio”)
  • {dataInicial}: é a data da primeira observação desejada, no formato “dd/MM/aaaa”
  • {dataFinal}: é a data da última observação desejada, no formato “dd/MM/aaaa”

Exemplo de como fica a URL sem nenhum parâmetro além do {codigo_serie}:

https://api.bcb.gov.br/dados/serie/bcdata.sgs.1/dados?formato=json

Os dados nessa URL podem ser acessados pelo navegador, mas como obtê-los através da linguagem de programação?

Para coletar os dados do SGS/BC no Python podemos usar a biblioteca requests em duas etapas:

Para obter o código e o tutorial deste exercício faça parte do Clube AM e receba toda semana os códigos em R/Python, vídeos, tutoriais e suporte completo para dúvidas.

  1. Faça uma requisição, obtendo uma resposta:
<Response [200]>
  1. Transforme o conteúdo da resposta (neste caso é do tipo JSON) em um DataFrame:
data valor
9855 02/04/2024 5.0476
9856 03/04/2024 5.0724
9857 04/04/2024 5.0237
9858 05/04/2024 5.0520
9859 08/04/2024 5.0421

Informações importantes

  • Fontes de dados públicas frequentemente podem apresentar instabilidades ou alterações sem aviso prévio. Se você obteve um erro ao tentar extrair dados públicos, verifique no site da instituição se está tudo ok e tente novamente em outro momento se for o caso.
  • APIs de dados públicos geralmente possuem limitações de requisição, portanto, utilize com cautela e responsabilidade, evitando ser bloqueado ou realizar requisições de dados desnecessárias.
  • Há formas de tornar o código de requisição de dados mais robusto contra falhas, consulte a documentação do pacote utilizado na aula para se aprofundar.

Conclusão

Utilizar APIs para coletar dados online pode acelerar e automatizar significativamente o processo de análise de dados. Diversas bases de dados hoje em dia possuem APIs para livre utilização, como Banco Central, Portal de Dados Abertos, IBGE e outras. Neste artigo, explicamos intuitivamente o que são APIs, como funcionam e mostramos um exemplo em Python de utilização.

Quer aprender mais?

Clique aqui para fazer seu cadastro no Boletim AM e baixar o código que produziu este exercício, além de receber novos exercícios com exemplos reais de análise de dados envolvendo as áreas de Data Science, Econometria, Machine Learning, Macroeconomia Aplicada, Finanças Quantitativas e Políticas Públicas diretamente em seu e-mail.

Compartilhe esse artigo

Facebook
Twitter
LinkedIn
WhatsApp
Telegram
Email
Print

Comente o que achou desse artigo

Outros artigos relacionados

Como usar automação com Python e IA na análise de ações

No cenário atual, profissionais de finanças buscam formas mais rápidas, eficientes e precisas para analisar dados e tomar decisões. Uma das grandes revoluções para isso é o uso combinado de Python, automação e modelos de linguagem grande (LLMs), como o Google Gemini. O dashboard que criamos é um ótimo exemplo prático dessa integração, reunindo dados, cálculos, visualizações e análise textual em um único ambiente.

Análise de ações com IA - um guia inicial

Neste artigo, você vai aprender a integrar IA na análise de ações de forma automatizada utilizando Python. Ao final, você terá um pipeline completo capaz de coletar dados de mercado, gerar gráficos, elaborar relatórios com linguagem natural.

Quais são as ferramentas de IA?

Um aspecto crucial dos Agentes de IA é a sua capacidade de tomar ações, que acontecem por meio do uso de Ferramentas (Tools). Neste artigo, vamos aprender o que são Tools, como defini-las de forma eficaz e como integrá-las ao seu Agente por meio da System Prompt. Ao fornecer as Tools certas para o seu Agente — e ao descrever claramente como essas Tools funcionam — você pode aumentar drasticamente o que sua IA é capaz de realizar.

Boletim AM

Receba diretamente em seu e-mail gratuitamente nossas promoções especiais e conteúdos exclusivos sobre Análise de Dados!

Boletim AM

Receba diretamente em seu e-mail gratuitamente nossas promoções especiais e conteúdos exclusivos sobre Análise de Dados!

como podemos ajudar?

Preencha os seus dados abaixo e fale conosco no WhatsApp

Boletim AM

Preencha o formulário abaixo para receber nossos boletins semanais diretamente em seu e-mail.