image

Accede a bootcamps ilimitados y a más de 650 cursos

50
%OFF
Article image
Thiago Gonçalves
Thiago Gonçalves06/11/2025 20:26
Compartir

Automatizando conversão de moedas em planilhas com Python e APIs de câmbio

    Quem trabalha com dados sabe: uma boa parte do tempo é gasta em tarefas repetitivas, como ajustar planilhas, consolidar relatórios ou converter valores de diferentes moedas.

    Essas tarefas são simples — mas tomam tempo e são perfeitas para automatização com Python.

    Neste artigo, vou mostrar um exemplo prático de como automatizar a conversão de valores de várias moedas para dólar americano (USD), utilizando Pandas, Requests e uma API gratuita de câmbio.

    🔧 Cenário

    Imagine uma planilha com vendas internacionais.

    Cada linha contém o valor da venda e a moeda em que a transação foi feita:

     amount currency
    0   43.75      EUR
    1  385.50      GBP
    2  495.50      GBP
    3  117.99      GBP
    4  624.00      USD
    

    Nosso objetivo é converter todas essas moedas para dólar (USD) e calcular o total unificado de vendas.

    ⚙️ Passo 1 — Obter as taxas de câmbio com requests

    Vamos usar a API gratuita exchangerate.host para buscar as taxas de câmbio em tempo real.

    import requests
    
    # Endpoint base da API
    url = "https://api.exchangerate.host/latest?base=USD"
    
    response = requests.get(url)
    
    if response.status_code == 200:
      data = response.json()
    else:
      raise Exception(f"Erro ao consultar API: {response.status_code}")
    

    A resposta da API contém algo como:

    {
    "base": "USD",
    "date": "2024-01-19",
    "rates": {
      "EUR": 0.918526683200147,
      "GBP": 0.788325525856526,
      "USD": 1.0,
      "BRL": 4.908974005694866
    }
    }
    

    🐍 Passo 2 — Converter os valores com Pandas

    Agora, vamos criar o DataFrame com as vendas e calcular o valor convertido para dólar usando as taxas obtidas da API.

    import pandas as pd
    
    # Dados simulando a planilha
    orders = pd.DataFrame({
      'amount': [43.75, 385.50, 495.50, 117.99, 624.00],
      'currency': ['EUR', 'GBP', 'GBP', 'GBP', 'USD']
    })
    
    # Mapeando a taxa para cada moeda
    orders['rate'] = orders['currency'].map(data['rates'])
    
    # Calculando o valor em dólares
    orders['usd_sales'] = orders['amount'] / orders['rate']
    
    print(orders)
    

    Saída:

     amount currency      rate   usd_sales
    0   43.75      EUR  0.918527   47.635543
    1  385.50      GBP  0.788326  488.854730
    2  495.50      GBP  0.788326  628.807374
    3  117.99      GBP  0.788326  149.710204
    4  624.00      USD  1.000000  624.000000
    

    💰 Passo 3 — Totalizar as vendas

    Por fim, somamos todas as vendas já convertidas para dólar:

    total_usd = orders['usd_sales'].sum()
    print(f"Total em USD: ${total_usd:,.2f}")
    

    Saída:

    Total em USD: $1,938.01
    

    🚀 Próximos passos

    A partir daqui, é possível evoluir o projeto:

    • Criar uma função automática que busca as taxas da API e atualiza as planilhas;
    • Agendar a execução diária com cron ou Task Scheduler;
    • Enviar relatórios automáticos por e-mail;
    • Armazenar os resultados em um dashboard ou banco de dados.

    Tudo isso com poucas linhas de código em Python.

    🧩 Conclusão

    Com Python, é possível automatizar grande parte do trabalho repetitivo com planilhas e conversões de valores.

    O uso combinado de Pandas, Requests e APIs públicas é uma solução leve, flexível e poderosa para economizar tempo e reduzir erros manuais.

    Código completo disponível no GitHub:

    🔗 github.com/goncasthiago/international_sales

    Compartir
    Recomendado para ti
    Binance - Blockchain Developer with Solidity 2025
    Neo4J - Análise de Dados com Grafos
    Cognizant - Mobile Developer
    Comentarios (0)