def unspent(cls, address: str, amount: int): data = utils.make_request('getaddressutxos', [address, utils.amount(amount)]) if data['error'] is None: utxos = [] for index, utxo in enumerate(data['result']): utxos.append({ 'txid': utxo['txid'], 'index': utxo['outputIndex'], 'script': utxo['script'], 'value': utxo['satoshis'], 'height': utxo['height'] }) data['result'] = utxos return data
def unspent(cls, address: str, amount: int): data = utils.make_request("getaddressutxos", [address, utils.amount(amount)]) if data["error"] is None: utxos = [] for index, utxo in enumerate(data["result"]): utxos.append({ "txid": utxo["txid"], "index": utxo["outputIndex"], "script": utxo["script"], "value": utxo["satoshis"], "height": utxo["height"] }) data["result"] = utxos return data
def mempool(cls, address: str, raw=False): data = utils.make_request("getaddressmempool", [address]) if data["error"] is None: total = len(data["result"]) if raw: transactions = [] for index, tx in enumerate(data["result"]): transactions.append(tx["txid"]) else: transactions = data["result"] for index, tx in enumerate(transactions): transactions[index].pop("address") data.pop("result") data["result"] = {} data["result"]["tx"] = transactions data["result"]["txcount"] = total return data
def mempool(cls, address: str, raw=False): data = utils.make_request('getaddressmempool', [address]) if data['error'] is None: total = len(data['result']) if raw: transactions = [] for index, tx in enumerate(data['result']): transactions.append(tx['txid']) else: transactions = data['result'] for index, tx in enumerate(transactions): transactions[index].pop('address') data.pop('result') data['result'] = {} data['result']['tx'] = transactions data['result']['txcount'] = total return data
def get(cls, height: int): return utils.make_request("getblockhash", [height])
def balance(cls, address: str): return utils.make_request("getaddressbalance", [address])
def spent(cls, txid: str): return utils.make_request("getspentinfo", [txid])
def broadcast(cls, raw: str): return utils.make_request("sendrawtransaction", [raw])
def decode(cls, raw: str): return utils.make_request("decoderawtransaction", [raw])
def get(self, bhash): data = utils.make_request("getblockheader", [bhash]) return data
def get(self, bhash): return utils.make_request("getblockheader", [bhash])
def supply(cls): data = utils.make_request("getblockchaininfo") height = data["result"]["blocks"] return cls._calc_supply(height)