You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
875 B
35 lines
875 B
#!/usr/bin/env python
|
|
|
|
import sys
|
|
from electrum import TcpStratumInterface
|
|
|
|
try:
|
|
addr = sys.argv[1]
|
|
except:
|
|
print "usage: watch_address <bitcoin_address>"
|
|
sys.exit(1)
|
|
|
|
i = TcpStratumInterface('electrum.novit.ro', 50001)
|
|
i.init_socket()
|
|
i.start()
|
|
i.send([('blockchain.address.subscribe',[addr])])
|
|
|
|
while True:
|
|
r = i.responses.get(True, 100000000000)
|
|
method = r.get('method')
|
|
if method == 'blockchain.address.subscribe':
|
|
i.send([('blockchain.address.get_history',[addr])])
|
|
elif method == 'blockchain.address.get_history':
|
|
confirmed = unconfirmed = 0
|
|
h = r.get('result')
|
|
if h is None:
|
|
continue
|
|
for item in h:
|
|
v = item['value']
|
|
if item['height']:
|
|
confirmed += v
|
|
else:
|
|
unconfirmed += v
|
|
print (confirmed+unconfirmed)/1.e8
|
|
|
|
|
|
|