Wladimir J. van der Laan
9 years ago
4 changed files with 2 additions and 346 deletions
@ -1,8 +0,0 @@
@@ -1,8 +0,0 @@
|
||||
### BitRPC |
||||
Allows for sending of all standard Bitcoin commands via RPC rather than as command line args. |
||||
|
||||
### Looking for Wallet Tools? |
||||
BitRPC.py is able to do the exact same thing as `walletchangepass.py` and `walletunlock.py`. Their respective commands in BitRPC.py are: |
||||
|
||||
bitrpc.py walletpassphrasechange |
||||
bitrpc.py walletpassphrase |
@ -1,335 +0,0 @@
@@ -1,335 +0,0 @@
|
||||
from jsonrpc import ServiceProxy |
||||
import sys |
||||
import string |
||||
import getpass |
||||
|
||||
# ===== BEGIN USER SETTINGS ===== |
||||
# if you do not set these you will be prompted for a password for every command |
||||
rpcuser = "" |
||||
rpcpass = "" |
||||
# ====== END USER SETTINGS ====== |
||||
|
||||
|
||||
if rpcpass == "": |
||||
access = ServiceProxy("http://127.0.0.1:8332") |
||||
else: |
||||
access = ServiceProxy("http://"+rpcuser+":"+rpcpass+"@127.0.0.1:8332") |
||||
cmd = sys.argv[1].lower() |
||||
|
||||
if cmd == "backupwallet": |
||||
try: |
||||
path = raw_input("Enter destination path/filename: ") |
||||
print access.backupwallet(path) |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "encryptwallet": |
||||
try: |
||||
pwd = getpass.getpass(prompt="Enter passphrase: ") |
||||
pwd2 = getpass.getpass(prompt="Repeat passphrase: ") |
||||
if pwd == pwd2: |
||||
access.encryptwallet(pwd) |
||||
print "\n---Wallet encrypted. Server stopping, restart to run with encrypted wallet---\n" |
||||
else: |
||||
print "\n---Passphrases do not match---\n" |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "getaccount": |
||||
try: |
||||
addr = raw_input("Enter a Bitcoin address: ") |
||||
print access.getaccount(addr) |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "getaccountaddress": |
||||
try: |
||||
acct = raw_input("Enter an account name: ") |
||||
print access.getaccountaddress(acct) |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "getaddressesbyaccount": |
||||
try: |
||||
acct = raw_input("Enter an account name: ") |
||||
print access.getaddressesbyaccount(acct) |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "getbalance": |
||||
try: |
||||
acct = raw_input("Enter an account (optional): ") |
||||
mc = raw_input("Minimum confirmations (optional): ") |
||||
try: |
||||
print access.getbalance(acct, mc) |
||||
except: |
||||
print access.getbalance() |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "getblockbycount": |
||||
try: |
||||
height = raw_input("Height: ") |
||||
print access.getblockbycount(height) |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "getblockcount": |
||||
try: |
||||
print access.getblockcount() |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "getblocknumber": |
||||
try: |
||||
print access.getblocknumber() |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "getconnectioncount": |
||||
try: |
||||
print access.getconnectioncount() |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "getdifficulty": |
||||
try: |
||||
print access.getdifficulty() |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "getgenerate": |
||||
try: |
||||
print access.getgenerate() |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "gethashespersec": |
||||
try: |
||||
print access.gethashespersec() |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "getinfo": |
||||
try: |
||||
print access.getinfo() |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "getnewaddress": |
||||
try: |
||||
acct = raw_input("Enter an account name: ") |
||||
try: |
||||
print access.getnewaddress(acct) |
||||
except: |
||||
print access.getnewaddress() |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "getreceivedbyaccount": |
||||
try: |
||||
acct = raw_input("Enter an account (optional): ") |
||||
mc = raw_input("Minimum confirmations (optional): ") |
||||
try: |
||||
print access.getreceivedbyaccount(acct, mc) |
||||
except: |
||||
print access.getreceivedbyaccount() |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "getreceivedbyaddress": |
||||
try: |
||||
addr = raw_input("Enter a Bitcoin address (optional): ") |
||||
mc = raw_input("Minimum confirmations (optional): ") |
||||
try: |
||||
print access.getreceivedbyaddress(addr, mc) |
||||
except: |
||||
print access.getreceivedbyaddress() |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "gettransaction": |
||||
try: |
||||
txid = raw_input("Enter a transaction ID: ") |
||||
print access.gettransaction(txid) |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "getwork": |
||||
try: |
||||
data = raw_input("Data (optional): ") |
||||
try: |
||||
print access.gettransaction(data) |
||||
except: |
||||
print access.gettransaction() |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "help": |
||||
try: |
||||
cmd = raw_input("Command (optional): ") |
||||
try: |
||||
print access.help(cmd) |
||||
except: |
||||
print access.help() |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "listaccounts": |
||||
try: |
||||
mc = raw_input("Minimum confirmations (optional): ") |
||||
try: |
||||
print access.listaccounts(mc) |
||||
except: |
||||
print access.listaccounts() |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "listreceivedbyaccount": |
||||
try: |
||||
mc = raw_input("Minimum confirmations (optional): ") |
||||
incemp = raw_input("Include empty? (true/false, optional): ") |
||||
try: |
||||
print access.listreceivedbyaccount(mc, incemp) |
||||
except: |
||||
print access.listreceivedbyaccount() |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "listreceivedbyaddress": |
||||
try: |
||||
mc = raw_input("Minimum confirmations (optional): ") |
||||
incemp = raw_input("Include empty? (true/false, optional): ") |
||||
try: |
||||
print access.listreceivedbyaddress(mc, incemp) |
||||
except: |
||||
print access.listreceivedbyaddress() |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "listtransactions": |
||||
try: |
||||
acct = raw_input("Account (optional): ") |
||||
count = raw_input("Number of transactions (optional): ") |
||||
frm = raw_input("Skip (optional):") |
||||
try: |
||||
print access.listtransactions(acct, count, frm) |
||||
except: |
||||
print access.listtransactions() |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "move": |
||||
try: |
||||
frm = raw_input("From: ") |
||||
to = raw_input("To: ") |
||||
amt = raw_input("Amount:") |
||||
mc = raw_input("Minimum confirmations (optional): ") |
||||
comment = raw_input("Comment (optional): ") |
||||
try: |
||||
print access.move(frm, to, amt, mc, comment) |
||||
except: |
||||
print access.move(frm, to, amt) |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "sendfrom": |
||||
try: |
||||
frm = raw_input("From: ") |
||||
to = raw_input("To: ") |
||||
amt = raw_input("Amount:") |
||||
mc = raw_input("Minimum confirmations (optional): ") |
||||
comment = raw_input("Comment (optional): ") |
||||
commentto = raw_input("Comment-to (optional): ") |
||||
try: |
||||
print access.sendfrom(frm, to, amt, mc, comment, commentto) |
||||
except: |
||||
print access.sendfrom(frm, to, amt) |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "sendmany": |
||||
try: |
||||
frm = raw_input("From: ") |
||||
to = raw_input("To (in format address1:amount1,address2:amount2,...): ") |
||||
mc = raw_input("Minimum confirmations (optional): ") |
||||
comment = raw_input("Comment (optional): ") |
||||
try: |
||||
print access.sendmany(frm,to,mc,comment) |
||||
except: |
||||
print access.sendmany(frm,to) |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "sendtoaddress": |
||||
try: |
||||
to = raw_input("To (in format address1:amount1,address2:amount2,...): ") |
||||
amt = raw_input("Amount:") |
||||
comment = raw_input("Comment (optional): ") |
||||
commentto = raw_input("Comment-to (optional): ") |
||||
try: |
||||
print access.sendtoaddress(to,amt,comment,commentto) |
||||
except: |
||||
print access.sendtoaddress(to,amt) |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "setaccount": |
||||
try: |
||||
addr = raw_input("Address: ") |
||||
acct = raw_input("Account:") |
||||
print access.setaccount(addr,acct) |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "setgenerate": |
||||
try: |
||||
gen= raw_input("Generate? (true/false): ") |
||||
cpus = raw_input("Max processors/cores (-1 for unlimited, optional):") |
||||
try: |
||||
print access.setgenerate(gen, cpus) |
||||
except: |
||||
print access.setgenerate(gen) |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "settxfee": |
||||
try: |
||||
amt = raw_input("Amount:") |
||||
print access.settxfee(amt) |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "stop": |
||||
try: |
||||
print access.stop() |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "validateaddress": |
||||
try: |
||||
addr = raw_input("Address: ") |
||||
print access.validateaddress(addr) |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "walletpassphrase": |
||||
try: |
||||
pwd = getpass.getpass(prompt="Enter wallet passphrase: ") |
||||
access.walletpassphrase(pwd, 60) |
||||
print "\n---Wallet unlocked---\n" |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
elif cmd == "walletpassphrasechange": |
||||
try: |
||||
pwd = getpass.getpass(prompt="Enter old wallet passphrase: ") |
||||
pwd2 = getpass.getpass(prompt="Enter new wallet passphrase: ") |
||||
access.walletpassphrasechange(pwd, pwd2) |
||||
print |
||||
print "\n---Passphrase changed---\n" |
||||
except Exception as inst: |
||||
print inst |
||||
|
||||
else: |
||||
print "Command not found or not supported" |
Loading…
Reference in new issue