O tutorial desse projeto em vídeo está disponível no canal Hashtag Programação
Welcome | Features | Tecnologias e Ferramentas | Sobre | Instalação do Pacote Anaconda Jupyter para programar em Python | Abrindo e acessando | Criando o arquivo e a pasta no Jupyter | API | Realizando as requisições | JSON para Python | Visualizar apenas uma cotação | Melhorando o código | Dúvidas | Contatos | Desenvolvedora
Olá, seja muito bem vinda(o)!
Tive a ideia de compartilhar alguns projetos para quem tem interesse em aprender Python, por isso os exercícios começam bem simples e vão dificultando aos poucos para quem gostaria de iniciar na programação ou precisa melhorar as suas habilidades, também coloquei alguns comentários para facilitar o entendimento.
📚 Aproveite o código desse exercício para acessar os valores das cotações de forma atualizada
👩💻 Refaça do seu jeito
😉 Se tiver qualquer dúvida, me contate
- Introdução de API
- Instalação do pacote Anaconda Jupyter / Instalar o Jupyter Notebook
- Como acessar APIs com Python / Usar API com Python
- Automatização de atividades dentro do código
- Uso de API de cotações de moedas
- Cotação do Dólar, Euro e Bitcoin com Python
- Link de requisição da API
- Obtenção de informações com API
As seguintes ferramentas foram usadas na construção do projeto:
🌐 API: É uma sigla do inglês que significa Application Programming Interface, uma Interface de Programação de Aplicativos. Se trata de um conjunto de padrões que fazem parte de uma interface e que permite a criação de plataformas de maneira mais simples e prática para desenvolvedores.
🐍 Python: É uma linguagem de programação de alto nível, ou seja, com sintaxe mais simplificada e próxima da linguagem humana, utilizada nas mais diversas aplicações, como desktop, web, servidores e ciência de dados.
- Acesse o site: www.anaconda.com
- Selecione "Products" e clique em "Individual Edition"
Obs: Anaconda Individual Edition é uma solução de código aberto que fornece utilitários para construir, distribuir, instalar, atualizar e gerenciar software em plataforma com Python.
- Realize o download de acordo com o sistema operacional da sua máquina
- Execute o instalador
- Selecione o local onde será realizada a instalação do programa
- Se preferir, desmarque as caixas de tutorial e arquivo de ajuda
- Pesquise "Jupyter" no menu iniciar do Windows e abra
Obs: Se não aparecer nenhum resultado para a sua pesquisa, reinicie o seu computador
- Abrirá o Jupyter Notebook e uma guia no navegador para que você acesse os arquivos
❗ Importante: Não feche o Jupyter Notebook enquanto estiver utilizando o Jupyter. Caso o navegador não abra automaticamente, copie o último link que aparece no Jupyter e cole no seu navegador.
Na página aberta do navegador você conseguirá visualizar as pastas do seu computador e acessá-las para criar o seu arquivo.
- Abra a pasta onde deseja salvar
- Clique em "New" no canto superior direito
- Selecione "Folder", criará uma pasta como "Untitled Folder"
- Selecione / flag a caixa de seleção da pasta, clique em "Rename" no canto superior esquerdo e preencha o nome da sua pasta, exemplo "Acesso-API-Cotacao"
- Acesse a pasta
- Clique em "New" no canto superior direito
- Selecione "Notebook: Python 3", o arquivo será criado e aberto
- Renomei como desejar selecionando o título padrão "Untitled" gerado no topo da página.
💬 Criar linhas: Selecione "Insert" no menu e escolha se prefere que ela apareça acima (Above) ou abaixo (Below) da linha que você está editando
💬 Tipos de linha: Para criar outros tipos de linha selecione "Cell" no menu, "Cell Type" e escolha a que preferir
- Para abrir a requisição dos dados da API importe a biblioteca "requests" digitando no seu arquivo: import requests
- Essa biblioteca já vem no Python, mas se não existir na sua máquina, pesquise "Anaconda Prompt" no menu iniciar do Windows e abra
- Digite no Prompt: pip install requests
- Aperte o Enter
- Importe a biblioteca JSON digitando no Jupyter: import json
Isso é necessário, pois as informações vem no formato de dicionário que não é o padrão do Python, e sim JSON comumente usado para troca informações entre sites
- Para acessar as informações das cotações, digite no Jupyter: cotacoes = requests.get()
- Para consumir os dados da API pública de cotações de moedas, acesse: https://docs.awesomeapi.com.br/
- Selecione "API de Cotações de Moedas"
- No site copie o link que retorna a última ocorrência das moedas, exemplo: https://economia.awesomeapi.com.br/last/USD-BRL,EUR-BRL,BTC-BRL
-
Cole o link dentro do parênteses e entre aspas, deverá ficar assim:
cotacoes = requests.get("https://economia.awesomeapi.com.br/last/USD-BRL,EUR-BRL,BTC-BRL")
-
Para validar e imprimir as informações digite no Jupyter: print(cotacoes)
Para executar o código selecione "Cell" e clique em "Run Cell", ou use o atalho: Ctrl + Enter
O código ficará assim:
import requests
import json
cotacoes = requests.get("https://economia.awesomeapi.com.br/last/USD-BRL,EUR-BRL,BTC-BRL")
print(cotacoes)
O resultado "200" mostra que a solicitação funcionou:
<Response [200]>
Para transformar de JSON para Python digite na linha acima do "print": cotacoes = cotacoes.json() - Isso é feito, pois as informações da requisição estão armazenadas dentro da variável "cotacoes" no formato JSON
O resultado ficará assim agora:
{'USDBRL': {'code': 'USD', 'codein': 'BRL', 'name': 'Dólar Americano/Real Brasileiro', 'high': '5.3239', 'low': '5.263', 'varBid': '0.0162', 'pctChange': '0.31', 'bid': '5.3098', 'ask': '5.3123', 'timestamp': '1629299404'}, 'EURBRL': {'code': 'EUR', 'codein': 'BRL', 'name': 'Euro/Real Brasileiro', 'high': '6.2333', 'low': '6.1663', 'varBid': '0.0198', 'pctChange': '0.32', 'bid': '6.2173', 'ask': '6.2218', 'timestamp': '1629299403'}, 'BTCBRL': {'code': 'BTC', 'codein': 'BRL', 'name': 'Bitcoin/Real Brasileiro', 'high': '174000', 'low': '163120', 'varBid': '5469.9', 'pctChange': '3.25', 'bid': '173947.2', 'ask': '173947.2', 'timestamp': '1624558019'}}
- Para ver as cotações do Bitcoin adicione na linha acima do "print": cotacao_bitcoin = cotacoes['BTCBRL']
- Substitua o "print(cotacoes)" por: print(cotacao_bitcoin) O resultado será:
{'code': 'BTC', 'codein': 'BRL', 'name': 'Bitcoin/Real Brasileiro', 'high': '174000', 'low': '163120', 'varBid': '5469.9', 'pctChange': '3.25', 'bid': '173947.2', 'ask': '173947.2', 'timestamp': '1624558019'}
- Usando como base o resultado acima, para imprimir apenas o valor da contação adicione o "bid" dentro de aspas duplas e colchetes após o código que representa o Bitcoin, assim:
cotacao_bitcoin = cotacoes['BTCBRL']["bid"]
Aparecerá o valor a cotação naquele momento, exemplo: 173947.2
Você pode refazer o código do seu jeito, colocar outras cotações e mais informações, segue um exemplo de código:
import requests
import json
cotacoes = requests.get("https://economia.awesomeapi.com.br/last/USD-BRL,EUR-BRL,BTC-BRL")
cotacoes = cotacoes.json()
cotacao_dolar = cotacoes['USDBRL']["bid"]
cotacao_euro = cotacoes['EURBRL']["bid"]
cotacao_bitcoin = cotacoes['BTCBRL']["bid"]
print("\n Cotação do Dólar Americano/Real Brasileiro: ", cotacao_dolar)
print("\n Cotação do Euro/Real Brasileiro: ", cotacao_euro)
print("\n Cotação do Bitcoin/Real Brasileiro: ", cotacao_bitcoin)
print("\n Cotações sem formatação: \n",cotacoes)
O resultado do código acima será:
Cotação do Dólar Americano/Real Brasileiro: 5.3098
Cotação do Euro/Real Brasileiro: 6.2173
Cotação do Bitcoin/Real Brasileiro: 173947.2
Cotações sem formatação:
{'USDBRL': {'code': 'USD', 'codein': 'BRL', 'name': 'Dólar Americano/Real Brasileiro', 'high': '5.3239', 'low': '5.263', 'varBid': '0.0162', 'pctChange': '0.31', 'bid': '5.3098', 'ask': '5.3123', 'timestamp': '1629299404'}, 'EURBRL': {'code': 'EUR', 'codein': 'BRL', 'name': 'Euro/Real Brasileiro', 'high': '6.2333', 'low': '6.1663', 'varBid': '0.0198', 'pctChange': '0.32', 'bid': '6.2173', 'ask': '6.2218', 'timestamp': '1629299403'}, 'BTCBRL': {'code': 'BTC', 'codein': 'BRL', 'name': 'Bitcoin/Real Brasileiro', 'high': '174000', 'low': '163120', 'varBid': '5469.9', 'pctChange': '3.25', 'bid': '173947.2', 'ask': '173947.2', 'timestamp': '1624558019'}}
Qualquer dúvida, interaja aqui:
- Faça perguntas
- Dê sugestões de melhoria para o projeto
- Compartilhe suas ideias
- E interaja sobre o assunto
😉Lembre-se de que esta é uma comunidade que construímos juntos 💪.
Se precisar de ajuda, entre em contato comigo 😉
✏️ Feito com ❤️ e Python por Ana Valentim.
💙 Se você gostou desse projeto, dê uma ⭐ e compartilhe!