Я пытался часами, и я просто не знаю, что я делаю неправильно. Это просто для планирования/исследования (не исполнительного) - игра с некоторым кодом из github, но мне нужно увидеть его функциональным.bitcoin json rpc с модулем запросов python?
RPC_USER = username
RPC_PASS = pasword
rpc_id = ID HERE
jsonrpc = "2.0"
payload = {"jsonrpc": jsonrpc, "id": rpc_id, "method": method, "params": params}
authstr = base64.encodestring(bytes('%s:%s' % (RPC_USER, RPC_PASS), 'utf-8')).strip()
request_headers = {"Authorization": "Basic %s" % authstr, 'content-type': 'application/json'}
try:
response = requests.get(RPC_URL, headers = request_headers, data = json.dumps(payload)).json()
print(response['result'])
except Exception as e: print(str(e))
if response['id'] != rpc_id:
raise ValueError("invalid response id!")
я получаю ошибку следующим образом:
Вот весь отслеживающий:
Expecting value: line 1 column 1 (char 0)
# напечатает Исключение
Traceback (most recent call last):
File "miner_2017.py", line 411, in <module>
solo_miner(bin2hex("------coinbase message here -----"), "-----bitcoin address here-----")
File "miner_2017.py", line 401, in solo_miner
mined_block, hps = block_mine(rpc_getblocktemplate(), coinbase_message, 0, address, timeout=60)
File "miner_2017.py", line 63, in rpc_getblocktemplate
try: return rpc("getblocktemplate", [{}])
File "miner_2017.py", line 52, in rpc
if response['id'] != rpc_id:
UnboundLocalError: local variable 'response' referenced before assignment
Что после того, как делать некоторые ищут, кажется, проблема с декодирование json-объекта из объекта bytes, а не строкового объекта. Я не знаю, как это исправить. Кажется, назначение переменной «response» было неудачным из-за проблемы json. Как я могу получить объект json в форме строки из запроса?
Кто-нибудь поможет мне? Благодаря
Пожалуйста, покажите полные отслеживающие ошибки, а не только часть последней строки. – jwodder
Добавлена остальная часть трассировки. – Engine