A maioria dos comandos em linha de comandos do Electrum estão também disponíveis na consola.
Os resultados são objetos Python, mesmo que por vezes sejam apresentados como objetos JSON para que seja mais claro.
Chamemos listunspent(), para ver a lista de saídas não gastas na carteira:
>> listunspent() [ { "address": "12cmY5RHRgx8KkUKASDcDYRotget9FNso3", "index": 0, "raw_output_script": "76a91411bbdc6e3a27c44644d83f783ca7df3bdc2778e688ac", "tx_hash": "e7029df9ac8735b04e8e957d0ce73987b5c9c5e920ec4a445130cdeca654f096", "value": 0.01 }, { "address": "1GavSCND6TB7HuCnJSTEbHEmCctNGeJwXF", "index": 0, "raw_output_script": "76a914aaf437e25805f288141bfcdc27887ee5492bd13188ac", "tx_hash": "b30edf57ca2a31560b5b6e8dfe567734eb9f7d3259bb334653276efe520735df", "value": 9.04735316 } ]
Repare que o resultado é apresentado como JSON.
Contudo, se o guardarmos para uma variável, é apresentado como um objeto Python:
>> u = listunspent() >> u [{'tx_hash': u'e7029df9ac8735b04e8e957d0ce73987b5c9c5e920ec4a445130cdeca654f096', 'index': 0, 'raw_output_script': '76a91411bbdc6e3a27c44644d83f783ca7df3bdc2778e688ac', 'value': 0.01, 'address': '12cmY5RHRgx8KkUKASDcDYRotget9FNso3'}, {'tx_hash': u'b30edf57ca2a31560b5b6e8dfe567734eb9f7d3259bb334653276efe520735df', 'index': 0, 'raw_output_script': '76a914aaf437e25805f288141bfcdc27887ee5492bd13188ac', 'value': 9.04735316, 'address': '1GavSCND6TB7HuCnJSTEbHEmCctNGeJwXF'}]
Isto faz com que seja possível combinar comandos do Electrum com Python.
Por exemplo, escolhamos apenas os endereços no resultado anterior:
>> map(lambda x:x.get('address'), listunspent()) [ "12cmY5RHRgx8KkUKASDcDYRotget9FNso3", "1GavSCND6TB7HuCnJSTEbHEmCctNGeJwXF" ]
Aqui combinamos dois comandos, listunspent e dumpprivkeys, para fazer dumping das chaves privadas de todos os endereços que têm saídas não gastas:
>> dumpprivkeys( map(lambda x:x.get('address'), listunspent()) ) { "12cmY5RHRgx8KkUKASDcDYRotget9FNso3": "***************************************************", "1GavSCND6TB7HuCnJSTEbHEmCctNGeJwXF": "***************************************************" }
Note que dumpprivkey lhe vai pedir a sua palavra-passe se a sua carteira estiver encriptada.
Os métodos GUI podem ser acedidos através da variável gui. Por exemplo, pode mostrar um código QR a partir de uma string utilizando
gui.show_qrcode.
Por exemplo:
gui.show_qrcode(dumpprivkey(listunspent()[0]['address']))