Obtendo a cotação do Bitcoin com SED

Publicado por Fábio Berbert de Paula em 29/06/2020

[ Hits: 2.331 ]

Blog: https://fabio.automatizando.dev

 


Obtendo a cotação do Bitcoin com SED



Nesta dica veremos como usar a combinação do curl e sed para obter a cotação do Bitcoin. Usaremos a API da exchange Binance.

A documentação da API da Binance pode ser encontrada aqui:
Pesquisando por "ticker" encontramos as seguintes informações:
  • Symbol Price Ticker: GET /api/v3/ticker/price
  • Parameters: symbol | STRING

Então o que queremos é a junção de: https://api.binance.com + /api/v3/ticker/price

Podemos passar a variável "symbol" como parâmetro GET para filtrar o preço pela moeda desejada, que em nosso caso será o Bitcoin.

Primeiro passo será listar todos os tickers e descobrir quais são os referentes ao BTC.

Listar todos os tickers:

curl -s https://api.binance.com/api/v3/ticker/price

Filtrar a saída com o sed, imprimindo um por linha, somente o valor de symbol:

curl -s https://api.binance.com/api/v3/ticker/price | sed 's/symbol/\nsymbol/g' | sed 's/^symbol\":\"\([A-Z]*\).*$/\1/'

Ainda temos bastante coisa né? Na data desta dica, 841 símbolos. Vamos filtrar somente as linhas que começam com BTC:

curl -s https://api.binance.com/api/v3/ticker/price | sed 's/symbol/\nsymbol/g' | sed 's/^symbol\":\"\([A-Z]*\).*$/\1/' | sed -n '/^BTC/p'
BTCUSDT
BTCTUSD
BTCPAX
BTCUSDC
BTCUSDS
BTCBBTC
BTCBUSD
BTCNGN
BTCRUB
BTCTRY
BTCEUR
BTCZAR
BTCBKRW
BTCIDRT
BTCUPUSDT
BTCDOWNUSDT
BTCGBP
BTCUAH


Estamos chegando lá! O símbolo que queremos é o BTCUSDT. Então vamos chamar a API informando o símbolo desejado:

curl -s https://api.binance.com/api/v3/ticker/price?symbol=BTCUSDT
{"symbol":"BTCUSDT","price":"9146.99000000"}

E finalmente o comando para extrair somente o preço:

curl -s https://api.binance.com/api/v3/ticker/price?symbol=BTCUSDT | sed 's/^.*price.:.\([0-9\.]*\).*$/\1/g'
9147.57000000

DICA: crie um alias chamado "bitcoin" ou nome similar para o comando acima.

Até a próxima!

Outras dicas deste autor

KDE - Alt + F2 para executar comandos parou de funcionar [Resolvido]

SED - texto para maiúsculas, minúsculas, pascal case e camel case

Conectando Linux com celulares através de Bluetooth

Sintaxe alternativa para encontrar arquivos por data com o comando find

Indentação automática no Vim

Leitura recomendada

Remover tags HTML com SED

Testando se uma variável é número em shell script

Listar comandos mais utilizados (via histórico de shell)

Ações condicionais no SED

Leitor de arquivos ePub

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts