Obtendo a cotação do Bitcoin com SED

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

[ Hits: 2.137 ]

Blog: https://mestrefabio.com

 


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

JavaScript - converter uma array para valores únicos

Steam no Debian 10 Buster

SED - combinando o conteúdo de dois arquivos

Converter vídeos para formato suportado no WhatsApp

Apagando linhas em branco no vim

Leitura recomendada

Como fazer "quit" no SED

Remover tags HTML com SED

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

Eliminando linhas de comentário ou linhas em branco no Linux

Ubuntu - Iniciar Conky no Login

  

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