Skip to main content

Data Science friendly wrapper for web3py

Project description

web3-premium

Data Science friendly wrapper for web3py

Installation

python3 -m pip install web3_premium

Explorers wrapper

Usage: <explorer>.<module>.<action>(<params>)
List of modules and module actions you can get from explorer documentation (etherscan, for example: https://docs.etherscan.io/api-endpoints/accounts)

import time

from web3_premium.explorer import etherscan


timestamp = int(time.time())
etherscan.block.getblocknobytime(timestamp=timestamp, closest="before")

You can also add new explorer, which support etherscan/blockscout api format, for example:

import time

from web3_premium.explorer import Explorer


timestamp = int(time.time())
andromeda = Explorer("https://andromeda-explorer.metis.io/api")
andromeda.block.getblocknobytime(timestamp=timestamp, closest="before")

Web3 smart contracts wrapper

Basic example with pure web3:

# We wanna to know, how many USDT at ethereum holds zero address (0x00000....) at 01.08.2022 (block 15253306)
from web3 import Web3

BLOCK = 15253306

w3 = Web3(Web3.HTTPProvider("https://rpc.ankr.com/eth"))
usdt_abi = ...  # some big json
usdt = w3.eth.contract(
    Web3.toChecksumAddress("0xdaC17F958D2ee523a2206206994597C13D831ec7"), abi=usdt_abi
)
burnedUsdt = usdt.functions.balanceOf(
    "0x0000000000000000000000000000000000000000"
).call(block_identifier=BLOCK)

With web3-premium:

# We wanna to know, how many USDT at ethereum holds zero address (0x00000....) at 01.08.2022 (block 15253306)
from web3_premium.chains import ethereum
from web3_premium.contract import Contract

BLOCK = 15253306

usdt = Contract("0xdaC17F958D2ee523a2206206994597C13D831ec7", ethereum)
burnedUsdt = usdt.balanceOf("0x0000000000000000000000000000000000000000", block=BLOCK)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

web3_premium-0.0.3.tar.gz (6.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

web3_premium-0.0.3-py3-none-any.whl (5.5 kB view details)

Uploaded Python 3

File details

Details for the file web3_premium-0.0.3.tar.gz.

File metadata

  • Download URL: web3_premium-0.0.3.tar.gz
  • Upload date:
  • Size: 6.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.23.0

File hashes

Hashes for web3_premium-0.0.3.tar.gz
Algorithm Hash digest
SHA256 c63f78b0ef53d1280ae81fb1f0e9b96cb43180e14786ffcb4aa8e4e1edd5012f
MD5 9641b1d2d42236790c017e0cc3b9eb2c
BLAKE2b-256 3928d40abee535cafdd07ea0050afc5398b9d460ae7f6fdbe28ab8dbb4ea45ec

See more details on using hashes here.

File details

Details for the file web3_premium-0.0.3-py3-none-any.whl.

File metadata

  • Download URL: web3_premium-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 5.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.23.0

File hashes

Hashes for web3_premium-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 b0f6a58ac59678f954f23a837be32294daf6aba3f5c29818629926efba1aee57
MD5 4280682280aabed88c072c7084d8edb0
BLAKE2b-256 a8ff955afc1d89ebe3ec6f77f39faf1a2552e19d1834413f45c61b9625869913

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page