Greifen Sie über Python auf Bitcoind zu

Dieser Artikel verwendet Mac OS Sierra 10.12.4. Wir haben die Informationen beim Erstellen einer Umgebung für den Zugriff auf Bitcoind von Python zusammengefasst.

Es wird davon ausgegangen, dass Sie Bitcoind installiert haben. Referenz: Erstellen einer Umgebung für Bitcoind mit Docker

Installieren Sie python-rpc

Verwenden Sie python-bitcoinrpc.

pip install python-bitcoinrpc

RPC-Verbindung herstellen

Stellen Sie eine von Bitcoin verwendete RPC-Verbindung (Remote Procedure Call) her. Folgen Sie quick_start, um loszulegen.

from bitcoinrpc.authproxy import AuthServiceProxy, JSONRPCException
rpc_user="bitcoinrpc"
rpc_password='passwordxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
rpc_connection = AuthServiceProxy("http://%s:%[email protected]:8332"%(rpc_user, rpc_password))

Verwenden Sie für rpc_user und rpc_password die beim Erstellen der Bitcoind-Umgebung festgelegten. Wenn Sie es nicht wissen, überprüfen Sie bitcoin.conf und es sollte dort sein. Ab dem 24. Juni 2017 tritt ein Fehler auf, wenn "/" im Kennwort von AuthServiceProxy enthalten ist. (Weil urllib das Trennzeichen nicht identifizieren kann, wenn rpc_user und rpc_password gut zerlegt werden.) Es ist notwendig, beispielsweise das Passwort nicht mit / zu mischen.

Überprüfen Sie die RPC-Verbindung

Nachdem wir rpc_connection definiert haben, nehmen wir einen Block

blhash = rpc_connection.getblockhash(0) #blhash ist die Block-Hash-Zeichenfolge
bl = rpc_connection.getblock(blhash) #bl ist Blockinformation

Überprüfen Sie das Ergebnis

bl
{'bits': '1d00ffff',
 'chainwork': '0000000000000000000000000000000000000000000000000000000100010001',
 'confirmations': 1,
 'difficulty': 1,
 'hash': '000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f',
 'height': 0,
 'mediantime': 1231006505,
 'merkleroot': '4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b',
 'nonce': 2083236893,
 'size': 285,
 'strippedsize': 285,
 'time': 1231006505,
 'tx': ['4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b'],
 'version': 1,
 'versionHex': '00000001',
 'weight': 1140}

Informationen zum Genesis-Block sind verfügbar.

Nächstes Mal werden wir den Code schreiben, um die Transaktionsinformationen im Block zu erhalten.

Recommended Posts

Greifen Sie über Python auf Bitcoind zu
Greifen Sie über Python auf Oracle DB zu
So greifen Sie über Python auf Wikipedia zu
Greifen Sie mit OAuth 2.0 von Python aus auf Tabellenkalkulationen zu
Greifen Sie über Python auf die Shader-Knoten von Blender zu
SQL zu SQL
MeCab von Python
Wiederbelebt von "kein Internetzugang" in Python
Zugriff auf RDS von Lambda (Python)
Verwenden Sie thingspeak aus Python
Berühren Sie MySQL in Python 3
Bedienen Sie Filemaker von Python aus
Verwenden Sie fließend Python
Änderungen von Python 3.0 zu Python 3.5
Änderungen von Python 2 zu Python 3.0
Python aus oder importieren
Verwenden Sie MySQL aus Python
Führen Sie Python aus Excel aus
Installieren Sie Python von der Quelle
Führen Sie Befehle aus Python aus
Bedienen Sie Neutronen von Python!
Verwenden Sie MySQL aus Python
Betreiben Sie LXC von Python aus
Manipuliere Riak aus Python
Erzwinge Python aus Fortran
Verwenden Sie BigQuery aus Python.
Führen Sie den Befehl von Python aus
[Python] Von Stdin lesen
Verwenden Sie mecab-ipadic-neologd von Python
Abrufen von Daten aus der Datenbank über ODBC mit Python (Access)
ODBC-Zugriff auf SQL Server von Linux mit Python
Deep Python hat von DEAP gelernt
Grammatikfunktionen aus Python3.6 hinzugefügt
Flirte von PHP nach Python
Stellen Sie MeCab in Python 3 zur Verfügung
Informationen von tweet_id (Python)
OCR aus PDF in Python
Führen Sie das Illustrator-Skript von Python aus
Verwenden Sie MySQL von Anaconda (Python)
Anaconda aktualisiert von 4.2.0 auf 4.3.0 (python3.5 aktualisiert auf python3.6)
Studie aus Python Hour4: Objektorientiert ②
Fragen Sie Athena von Lambda Python ab
Studie aus Python Hour3: Funktionen
Starten / Stoppen von GCE über Python
Stoppen Sie Omxplayer vom Python-Code
Wechseln Sie von Python2.7 zu Python3.6 (centos7)
Stellen Sie von Python aus eine Verbindung zu SQLite her
Installieren Sie pyenv von Homebrew, installieren Sie Python von pyenv
Studie aus Python Hour4: Objektorientiert ①
Python-Namenskonvention (ab PEP8)
Greifen Sie mit Python auf Google Drive zu
Mit Skype benachrichtigen Sie mit Skype von Python!
Verwenden Sie die e-Stat-API von Python
Registrieren Sie das Redmine-Problem von Python
Rufen Sie Matlab von Python zur Optimierung auf
Führen Sie das Python-Skript aus der Batchdatei aus
Python: Tags von HTML-Daten ausschließen
Verwenden Sie Stanford Core NLP von Python
Versuchen Sie die IAM-Datenbankauthentifizierung von Python aus
Rufen Sie C von Python mit DragonFFI auf