tuto – ruby – get bitcoin balance

Pour continuer dans la foulée du sujet Bitcoin, voici un petit tuto sur la manière de récupérer dynamiquement le solde de son compte bitcoin directement sur le blockchain (Cf article sur le bitcoin sur mon site pour savoir ce qu’est le blockchain :p).

Une classe ruby pour les deux principales méthodes, une pour convertir en unité décimale, l’autre pour récupérer le montant du solde :


 #!/usr/bin/env ruby
 # encoding: UTF-8
 require 'uri'
 require 'open-uri'
 require 'nokogiri'

class Btc_Balance
 def convert_btc_unit(balance)
   final = balance/100000000.0
   return final
 end

 def get_balance(addr)
   url = "https://blockchain.info/q/addressbalance/" << addr
   data = URI.parse(url).read
   doc = Nokogiri::HTML(data)
   balance = doc.search('//html/body/p').text
   return balance
 end
end

 

Le code appelant la classe précédement créée (il faudra bien sur remplacer le contenu de la variable addr par votre propre adresse) :


 def main
   btc_account = Btc_Balance.new
   addr = "votre adresse BTC"
   balance = btc_account.get_balance(addr)
   final_balance = btc_account.convert_btc_unit(balance.to_i)
   puts "%.8f" % final_balance << " BTC"
 end

main

 

enjoy !