diff --git a/jmbitcoin/jmbitcoin/__init__.py b/jmbitcoin/jmbitcoin/__init__.py index ac763cc..2a530a3 100644 --- a/jmbitcoin/jmbitcoin/__init__.py +++ b/jmbitcoin/jmbitcoin/__init__.py @@ -5,7 +5,6 @@ import coincurve as secp256k1 from jmbitcoin.secp256k1_main import * from jmbitcoin.secp256k1_transaction import * from jmbitcoin.secp256k1_deterministic import * -from jmbitcoin.bci import * from jmbitcoin.btscript import * from jmbitcoin.bech32 import * diff --git a/jmbitcoin/jmbitcoin/bci.py b/jmbitcoin/jmbitcoin/bci.py deleted file mode 100644 index 37ca2a9..0000000 --- a/jmbitcoin/jmbitcoin/bci.py +++ /dev/null @@ -1,75 +0,0 @@ -#!/usr/bin/python -from __future__ import (absolute_import, division, - print_function, unicode_literals) -from builtins import * # noqa: F401 -import json, re -import random -import time -import platform -from jmbase.support import get_log -if platform.system() == "Windows": #pragma: no cover - import ssl - import urllib2 -else: - try: - from urllib.request import build_opener - except: - from urllib2 import build_opener - -log = get_log() - -# Makes a request to a given URL (first arg) and optional params (second arg) -def make_request(*args): - if platform.system() == "Windows": #pragma: no cover - sctx = ssl.SSLContext(ssl.PROTOCOL_TLSv1_2) - sh = urllib2.HTTPSHandler(debuglevel=0, context=sctx) - opener = urllib2.build_opener(sh) - else: - opener = build_opener() - opener.addheaders = [('User-agent', - 'Mozilla/5.0' + str(random.randrange(1000000)))] - try: - return opener.open(*args).read().strip() - except Exception as e: - try: - p = e.read().strip() - except: - p = e - raise Exception(p) - -def make_request_blockr(*args): - counter = 0 - while True: - data = json.loads(make_request(*args)) - if data['status'] == 'error' and data['code'] == 429: - log.debug('Blockr service error: ' + data['message']) - time.sleep(min(60, 2**counter / 2.)) - counter += 1 - continue - return data - -# Pushes a transaction to the network using https://blockchain.info/pushtx -def bci_pushtx(tx): - if not re.match('^[0-9a-fA-F]*$', tx): - tx = tx.encode('hex') - return make_request('https://blockchain.info/pushtx', 'tx=' + tx) - -def blockr_pushtx(tx, network='btc'): - if network == 'testnet': - blockr_url = 'https://tbtc.blockr.io/api/v1/tx/push' - elif network == 'btc': - blockr_url = 'https://btc.blockr.io/api/v1/tx/push' - else: - raise Exception('Unsupported network {0} for blockr_pushtx'.format( - network)) - - if not re.match('^[0-9a-fA-F]*$', tx): - tx = tx.encode('hex') - return make_request(blockr_url, '{"hex":"%s"}' % tx) - - - - - - -