Olá Kauê, tudo bem com você?
Meus parabéns pela implementação do código, fico feliz que tenha compartilhado-o com a comunidade do fórum Alura. Sua dedicação e empenho é muito importante para o seu desenvolvimento como pessoa programadora.
Para realizar a coleta do valor do dólar atualizado a partir do consumo de uma API, podemos fazer o uso da biblioteca requests
do Python fazendo uma requisição a uma API e manipularmos o retorno da requisição. Usarei no exemplo a API: https://www.exchangerate-api.com/
Será necessário realizar a instalação da biblioteca requests
, basta executar o código abaixo no terminal.
python -m pip install requests
Após a instalação da biblioteca, adicione a função abaixo (get_valor_dolar
) ao arquivo que contêm a classe ExtratorURL
, e adicione no topo do arquivo a importação da biblioteca requests
.
import requests
def get_valor_dolar():
response = requests.get("https://api.exchangerate-api.com/v4/latest/USD")
if response.status_code == 200:
data = response.json()
return data['rates']['BRL']
else:
raise ValueError("Não foi possível obter o valor do dólar")
A função get_valor_dolar
será responsável criar a requisição e retornar o valor atual do dólar após o consumo da API: https://www.exchangerate-api.com/
Basta atribuirmos a chamada da função get_valor_dolar
a constante VALOR_DOLAR
, conforme abaixo.
VALOR_DOLAR = get_valor_dolar()
Após realizar essas mudanças, salve o arquivo e execute-o.
import requests
# codigo_da_classe_ExtratorURL
def get_valor_dolar():
response = requests.get("https://api.exchangerate-api.com/v4/latest/USD")
if response.status_code == 200:
data = response.json()
return data['rates']['BRL']
else:
raise ValueError("Não foi possível obter o valor do dólar")
url = "bytebank.com/cambio?quantidade=300&moedaOrigem=dolar&moedaDestino=real"
extrator_url = ExtratorURL(url)
VALOR_DOLAR = get_valor_dolar()
moeda_origem = extrator_url.get_valor_parametro("moedaOrigem")
moeda_destino = extrator_url.get_valor_parametro("moedaDestino")
quantidade = extrator_url.get_valor_parametro("quantidade")
conversao = extrator_url.conversao(moeda_origem, moeda_destino, float(quantidade))
print("Quantidade: {:.2f} ({})\nConversão: {:.2f} ({})".format(float(quantidade), moeda_origem, conversao, moeda_destino))
Resultado
Quantidade: 300.00 (dolar)
Conversão: 1548.00 (real)
Para aprimorar ainda mais o seu aprendizado sobre o consumo de APIs utilizando o Python, gostaria de deixar as seguintes recomendações. A primeira, será um artigo onde é abordado com detalhes como podemos realizar o consumo da API do GitHub.
A segunda recomendação, será um curso, onde é apresentado sobre como realizar a validação de dados e o consumo da API ViaCep.
Espero ter lhe ajudado. Em caso de dúvidas estou à disposição.
Não hesite em voltar ao fórum para continuar aprendendo e interagindo com a comunidade.
Abraços e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!