Ethereum JSON RPC Client
Project description
# Ethereum RPC Client
[![Build Status](https://travis-ci.org/pipermerriam/ethereum-rpc-client.png)](https://travis-ci.org/pipermerriam/ethereum-rpc-client) [![Documentation Status](https://readthedocs.org/projects/ethereum-rpc-client/badge/?version=latest)](https://readthedocs.org/projects/ethereum-rpc-client/?badge=latest) [![PyPi version](https://pypip.in/v/ethereum-rpc-client/badge.png)](https://pypi.python.org/pypi/ethereum-rpc-client) [![PyPi downloads](https://pypip.in/d/ethereum-rpc-client/badge.png)](https://pypi.python.org/pypi/ethereum-rpc-client)
Python client for Ethereum JSON RPC Server
> Note that this currently only implements a handful of the JSON RPC methods > exposed by the server.
## Installation
Install with pip
`bash $ pip install ethereum-rpc-client `
## Basic Usage
Assuming you have an Ethereum node running the JSON RPC server on localhost:8454
`python >>> from eth_rpc_client import Client >>> client = Client(host="127.0.0.1", port="8454") >>> client.get_coinbase() ... '0xd3cda913deb6f67967b99d67acdfa1712c293601' `
## API
### Client.get_coinbase()
> https://github.com/ethereum/wiki/wiki/JSON-RPC#eth_coinbase
Returns the hex encoded coinbase.
### Client.get_gas_price()
> https://github.com/ethereum/wiki/wiki/JSON-RPC#eth_gasprice
Returns the gas price in wei as an integer
### Client.get_balance(address, block=”latest”)
> https://github.com/ethereum/wiki/wiki/JSON-RPC#eth_getbalance
address: The hex encoded address to lookup the balance for.
block: The block to use for the lookup.
Returns the account balance for the address in wei as an integer.
### Client.get_code(address, block=”latest”)
> https://github.com/ethereum/wiki/wiki/JSON-RPC#eth_getcode
address: The hex encoded address to lookup the code for.
block: The block to use for the lookup.
Returns the code at the given address.
### Client.call(_from=None, to=None, gas=None, gas_price=None, value=0, data=None, block=”latest”)
> https://github.com/ethereum/wiki/wiki/JSON-RPC#eth_call
_from: The hex encoded address to use as the source for the call.
to: The hex encoded address of the contract for the call.
gas: Integer gas alotment for the call.
gas_price: Integer gas price in wei.
value: Integer amount in wei to send with the call.
data: The call data.
Returns the call response.
### Client.get_transaction_receipt(txn_hash)
> https://github.com/ethereum/wiki/wiki/JSON-RPC#eth_gettransactionreceipt
txn_hash: The hex encoded transaction hash to lookup.
Returns a dictionary of the transaction receipt or None if no receipt is found.
transactionHash: hex encoded hash of the transaction.
transactionIndex: integer of the transactions index position in the block.
blockHash: hex encoded hash of the block where this transaction was in.
blockNumber: integer block number where this transaction was in.
cumulativeGasUsed: The total amount of gas used when this transaction was executed in the block.
gasUsed: The amount of gas used by this specific transaction alone.
contractAddress: The contract address created, if the transaction was a contract creation, otherwise null.
logs: list of log objects, which this transaction generated
### Client.get_transaction_by_hash(txn_hash)
> https://github.com/ethereum/wiki/wiki/JSON-RPC#eth_gettransactionbyhash
txn_hash: The hex encoded transaction hash to lookup.
Returns a dictionary of the transaction values or None if no transaction is found.
hash: DATA, 32 Bytes - hash of the transaction.
nonce: QUANTITY - the number of transactions made by the sender prior to this one.
blockHash: DATA, 32 Bytes - hash of the block where this transaction was in. null when its pending.
blockNumber: QUANTITY - block number where this transaction was in. null when its pending.
transactionIndex: QUANTITY - integer of the transactions index position in the block. null when its pending.
from: DATA, 20 Bytes - address of the sender.
to: DATA, 20 Bytes - address of the receiver. null when its a contract creation transaction.
value: QUANTITY - value transferred in Wei.
gasPrice: QUANTITY - gas price provided by the sender in Wei.
gas: QUANTITY - gas provided by the sender.
input: DATA - the data send along with the transaction.
### Client.get_block_number()
> https://github.com/ethereum/wiki/wiki/JSON-RPC#eth_blocknumber
Returns the number of the most recent block.
### Client.get_accounts()
> https://github.com/ethereum/wiki/wiki/JSON-RPC#eth_accounts
Returns a list of the addresses owned by the client.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for ethereum-rpc-client-0.2.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4b8c85d0517f8017c89e4bc91c7ea411dd1c703e7a0bbba199c18b6df9b65e0f |
|
MD5 | 30a0795fc81a0796b4bf6141a951364c |
|
BLAKE2b-256 | 375995d4bbd3930fafada46b1770b7b385d59e807480638e7c01c1dee4e5cfbd |
Hashes for ethereum_rpc_client-0.2.0-py2-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6e3302355ebd753051bea561d6c0988b4b61436a4d093bdda63e5c1a4745ee34 |
|
MD5 | 6068804a47106109c09ee3d8335dc31f |
|
BLAKE2b-256 | 1277dbe466aedc5457c31a3b31916cdd9c2f7618a8d2d55bd6f22dff597d355b |
Hashes for ethereum-rpc-client-0.2.0.macosx-10.10-x86_64.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 70a54e013b5ace0dcc89041acf6ccf45f28cbeb207fde1ee8a7209a477ed6f33 |
|
MD5 | 4ec03ed06c08346a510022ac61403920 |
|
BLAKE2b-256 | 9d109a909c90bbe9ec6bef7063623f61ee882c8524d9a7fad0c24f5af2b0f726 |