Saravanan666/pypi-org huggingface dataset:
Package: web3-input-decoder
web3-input-decoderA simple offline web3 transaction input decoder for functions and constructors.Installpipinstallweb3-input-decoderQuick startLet's take aUSDT transfer transactionand theUSDT contract creator transactionas an example:>>>importjson>>>importurllib.request>>>fromweb3_input_decoderimportdecode_constructor,decode_function>>>f=urllib.request.urlopen("https://api.etherscan.io/api?module=contract&action=getabi&address=0xdac17f958d2ee523a2206206994597c13d831ec7")>>>TETHER_ABI=json.loads(json.load(f)["result"])>>>decode_function(TETHER_ABI,"0xa9059cbb000000000000000000000000f050227be1a7ce587aa83d5013f900dbc3be0611000000000000000000000000000000000000000000000000000000000ecdd350",)[('address','_to','0xf050227be1a7ce587aa83d5013f900dbc3be0611'),('uint256','_value',248370000)]>>>decode_constructor(TETHER_ABI,"000000000000000000000000000000000000000000000000000000174876e800000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a546574686572205553440000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000045553445400000000000000000000000000000000000000000000000000000000")[('uint256','_initialSupply',100000000000),('string','_name','Tether USD'),('string','_symbol','USDT'),('uint256','_decimals',6)]You can also play with ithere.Performance enhancementIf you have lots of inputs in the same contract to decode, consider usingInputDecoder.>>>fromweb3_input_decoderimportInputDecoder>>>decoder=InputDecoder(TETHER_ABI)>>>for_inrange(10000):>>>decoder.decode_function(("0xa9059cbb000000000000000000000000f050227be1a7ce587aa83d5013f900dbc3b""e0611000000000000000000000000000000000000000000000000000000000ecdd350"),)APIdecode_constructordefdecode_constructor(abi:List[dict],tx_input:Union[str,bytes],bytecode:Optional[Union[str,bytes]]=None,)->List[Tuple[str,str,Any]]Parameters:abi: Contract ABItx_input: Transaction input to decode, with or without deployed contract bytecodebytecode: Optional deployed contract bytecode. If this is set,tx_inputshould include bytecodeReturns:List[Tuple[str, str, Any]]: Decoded type-name-value tuplesdecode_functiondefdecode_function(abi:List[dict],tx_input:Union[str,bytes])->List[Tuple[str,str,Any]]Parameters:abi: Contract ABItx_input: Transaction input to decodeReturns:List[Tuple[str, str, Any]]: Decoded type-name-value tuplesRationaleExisting solutions are not satisfying to me, e.g.:web3pycan only decode function calls and it's necessary to be online to set up a provider first.ethereum-input-decoderis not actively maintained and it contains several glitches.
Package: web3-klaytn
Web3.pyA Python library for interacting with Ethereum, inspired byweb3.js.Python 3.7.2+ supportQuickstartGet started in 5 minutesortake a tourof the library.DocumentationFor additional guides, examples, and APIs, see thedocumentation.Want to help?Want to file a bug, contribute some code, or improve documentation? Excellent! Read up on our
guidelines forcontributing,
then check out issues that are labeledGood First Issue.Questions on implementation or usage? Join the conversation ondiscord.
Package: web3lib
web3.pyA Python library for interacting with Ethereum.Python 3.7.2+ supportQuickstartGet started in 5 minutesortake a tourof the library.DocumentationFor additional guides, examples, and APIs, see thedocumentation.Want to help?Want to file a bug, contribute some code, or improve documentation? Excellent! Read up on our
guidelines forcontributing,
then check out issues that are labeledGood First Issue.Questions on implementation or usage? Join the conversation ondiscord.
Package: web3login
web3login pythonOpen source Web3 authorization Python library.CLIGenerate the signatureweb3loginauthorize\--application"<your_application_name_or_any_string>"\--deadline"<unix_timestamp_until_signature_will_be_active>"\--signer.secrets/keyfile-p"${KEYFILE_PASSWORD}"|base64-w0Output base64 string could be passed asAuthorizationheader or verified with CLI.Verify the signatureweb3loginverify\--application"<your_application_name_or_any_string>"\--payload"${GENERATED_BASE64_SIGNATURE}"
Package: web3mc
web3mc - multicall library for web3pyBased on makerdao'smulticall contractandbrownieimplementation with batching and asynchronous support. Works
directly with web3py contract functions and parametersInstallationpipinstallweb3mcQuickstartBasic usage(this is default value if empty - set by web3py)exportWEB3_HTTP_PROVIDER_URI=http://localhost:8545fromweb3.autoimportw3fromweb3mc.autoimportmulticallabi=[{"constant":True,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":False,"stateMutability":"view","type":"function",},{"constant":True,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":False,"stateMutability":"view","type":"function",},{"constant":True,"inputs":[{"name":"","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":False,"stateMutability":"view","type":"function"}]weth_erc20=w3.eth.contract("0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",abi=abi)calls=[weth_erc20.functions.name(),weth_erc20.functions.symbol(),weth_erc20.functions.balanceOf("vitalik.eth")]result=multicall.aggregate(calls)print(result)# ['Wrapped Ether', 'WETH', 26992040046283229929]Call multiple contracts with same abi (implementation)...weth_erc20=w3.eth.contract("0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",abi=abi)calls=[weth_erc20.functions.name(),weth_erc20.functions.symbol(),weth_erc20.functions.balanceOf("vitalik.eth")]*2# WBTC, USDCaddresses=["0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2"]*3+["0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599"]*3result=multicall.aggregate(calls,use_try=True,addresses=addresses)# tryAggregate()print(result)# ['Wrapped BTC', 'WBTC', 0, 'USD Coin', 'USDC', 396267093705]ParametersEnvironment variableWEB3_HTTP_PROVIDER_URI- can be overwritten directly (from web3py)Custom parametersfromweb3mcimportMulticallmulticall=Multicall(provider_url="<your custom provider url>",# Overrides env parameterbatch=100,# can lead to overflowmax_retries=3,# retries without use_try (aggregate function in contract)gas_limit=50_000_000,# gas limit for calls_semaphore=1000,# max concurrent coroutines, change carefully!)TestingInstall dependencies, make sure you setWEB3_HTTP_PROVIDER_URIenvironment variablepytesttests
Package: web3metis
Web3.pyA Python library for interacting with Ethereum, inspired byweb3.js.Python 3.6+ supportQuickstartGet started in 5 minutesortake a tourof the library.DocumentationFor additional guides, examples, and APIs, see thedocumentation.Want to help?Want to file a bug, contribute some code, or improve documentation? Excellent! Read up on our
guidelines forcontributing,
then check out issues that are labeledGood First Issue.Questions on implementation or usage? Join the conversation ondiscord.
Package: web3-metis
Web3.pyA Python library for interacting with Ethereum, inspired byweb3.js.Python 3.6+ supportQuickstartGet started in 5 minutesortake a tourof the library.DocumentationFor additional guides, examples, and APIs, see thedocumentation.Want to help?Want to file a bug, contribute some code, or improve documentation? Excellent! Read up on our
guidelines forcontributing,
then check out issues that are labeledGood First Issue.Questions on implementation or usage? Join the conversation ondiscord.
Package: web3-multicall
web3_multicallDescriptionweb3_multicallInstallpipinstallweb3_multicall# orpip3installweb3_multicallUsagefromkw3importKWeb3fromweb3_multicallimportMulticallw3=KWeb3('https://bsc-dataseed.binance.org/')busd=w3.busd()multicall=Multicall(w3.eth)# address is not needed, unless you are on an unsupported  chain (check 'web3_multicall/models/enums/network.py')multicall_result=multicall.aggregate([busd.name_method(),busd.symbol_method(),busd.decimals_method(),busd.total_supply_method(),busd.balance_of_method('YOUR_ADDRESS')])multicall_result.jsonprint()# Prints## {#     "block_number": 7714239,#     "results": [#         {#             "contract_address": "0xe9e7CEA3DedcA5984780Bafc599bD69ADd087D56",#             "function_name": "name",#             "inputs": [],#             "results": [#                 "BUSD Token"#             ]#         },#         {#             "contract_address": "0xe9e7CEA3DedcA5984780Bafc599bD69ADd087D56",#             "function_name": "symbol",#             "inputs": [],#             "results": [#                 "BUSD"#             ]#         },#         {#             "contract_address": "0xe9e7CEA3DedcA5984780Bafc599bD69ADd087D56",#             "function_name": "decimals",#             "inputs": [],#             "results": [#                 18#             ]#         },#         {#             "contract_address": "0xe9e7CEA3DedcA5984780Bafc599bD69ADd087D56",#             "function_name": "totalSupply",#             "inputs": [],#             "results": [#                 4200999999996203280118545633#             ]#         },#         {#             "contract_address": "0xe9e7CEA3DedcA5984780Bafc599bD69ADd087D56",#             "function_name": "balanceOf",#             "inputs": [#                 {#                     "name": "account",#                     "value": "YOUR_ADDRESS",#                     "solidity_type": "address"#                 }#             ],#             "results": [#                 0#             ]#         }#     ]# }Dependencieseth-abi,eth-utils,jsoncodable,kw3,web3,web3-wrapped-contract
Package: web3-multi-provider
Web3 Multi ProviderProvider that accepts multiple endpoints.Install$pipinstallweb3-multi-provideror$poetryaddweb3-multi-providerUsagefromweb3importWeb3fromweb3_multi_providerimportMultiProviderfromweb3_multi_providerimportFallbackProviderw3=Web3(MultiProvider([# RPC endpoints list'http://127.0.0.1:8000/','https://mainnet.infura.io/v3/...','wss://mainnet.infura.io/ws/v3/...',]))# orw3=Web3(FallbackProvider([# RPC endpoints list'http://127.0.0.1:8000/','https://mainnet.infura.io/v3/...','wss://mainnet.infura.io/ws/v3/...',]))last_block=w3.eth.get_block('latest')MultiProviderThis provider tracks currently used endpoint internally and switch to the next one on error or fails if no more
endpoints to switch to.FallbackProviderThis provider sends requests to the all endpoints in the sequence until response received or endpoints list exhausted.For developerspoetry install- to install depspre-commit install- to install pre-commit hooksTestspoetryrunpytesttests
Package: web3_premium
web3-premiumData Science friendly wrapper for web3pyInstallationpython3 -m pip install web3_premiumExplorers wrapperUsage:<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)importtimefromweb3_premium.explorerimportetherscantimestamp=int(time.time())etherscan.block.getblocknobytime(timestamp=timestamp,closest="before")You can also add new explorer, which support etherscan/blockscout api format, for example:importtimefromweb3_premium.explorerimportExplorertimestamp=int(time.time())andromeda=Explorer("https://andromeda-explorer.metis.io/api")andromeda.block.getblocknobytime(timestamp=timestamp,closest="before")Web3 smart contracts wrapperBasic example with pure web3:# We wanna to know, how many USDT at ethereum holds zero address (0x00000....) at 01.08.2022 (block 15253306)fromweb3importWeb3BLOCK=15253306w3=Web3(Web3.HTTPProvider("https://rpc.ankr.com/eth"))usdt_abi=...# some big jsonusdt=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)fromweb3_premium.chainsimportethereumfromweb3_premium.contractimportContractBLOCK=15253306usdt=Contract("0xdaC17F958D2ee523a2206206994597C13D831ec7",ethereum)burnedUsdt=usdt.balanceOf("0x0000000000000000000000000000000000000000",block=BLOCK)Custom node for predefined chainsYou can set env variable for overriding default rpc (ankr). For example, for ethereum you should setETHEREUM_RPC=infura.com/....
Package: web3-reactor
web3-reactor项目介绍本项目是一个基于Python的异步web3信息处理套件，内置集成一些常用的区块链基础功能。旨在收集，处理，响应区块链上的所有
Transaction 或 Event。用途NFT抢购ERC20抢购MEV机器人构建区块链数据库区块链实时数据分析项目结构核心观念正如名字那样，本项目的核心就在于react，即消息驱动式，一个message引导一次回应。本套件使用插件模式进行开发，开发者可以在本套件提供的基础设施的基础上，开发自己的插件，以实现自己的业务逻辑。消息：一个消息代表了一次广播，消息由频道内的publisher发布，随后在频道内进行广播。上下文(msg-context)：一个消息将会伴随着一个上下文，上下文中包含了消息的一些基础信息，如：区块链原始交易信息，插件自定义的数据等，一个上下文将会在一个完整的生命周期中保持。服务：本套件提供的一些基础服务设施。可以通过开发独立的包，来扩展本套件的服务(目前只提供ETH相关服务)。频道：一个插件的集合，用户开发的对象，可以同时运行多个频道，来执行不同的任务，也可以将频道进行串联关联来执行其中的插件。插件：一个频道中的最小单元，当一个频道广播一个消息时，频道内的插件会根据自己的权重按序处理消息，处理完成后，将消息传递给下一个插件。生命周期：一个消息拥有一个完整的生命周期，包含msg-start,msg-end,msg-prevent，msg-stop,msg-jump以及开发者自定义的生命周期事件，通常地，认为一个完整的生命周期是msg-start到msg-end。事件：事件是除了默认广播之外的另外一种监听方式，可以用来处理一些特殊的业务逻辑，如：添加后台任务，检查任务情况，清理内存等。事件支持自定义。消息广播当channel内的publisher发布一个消息时，消息将会在channel内广播，所有的插件都将会收到这个消息，并对其作出相应的回应。当本channel的最后一个插件响应之后，如果channel没有子节点，那么消息将会被销毁，否则，消息将会被传递给子节点的publisher，并在子节点内广播。如果channel拥有多个子节点，那么msg-context会被复制，让所有子节点并发执行。TODOmsg-contextto lockconfig format&type check supportetherscan API to modulealchemy API to moduleweb3 toolkit (pro edition)快速上手当一个message被发布，插件将会按序执行，并对其作出相应的回应。这就是本套件最直观的行为。现在，我们将编写一个简单的插件，来实现一个简单的功能：监听Transfer事件，当事件发生时，打印出from和to地址。创建虚拟环境，可选python3-mvenvmy-reactorcdmy-reactor# Linux & Macsource./venv/bin/activate# Windows.\venv\Scripts\activate.bat安装# Linux & Macpip3installweb3-reactor# Windowspipinstallweb3-reactor使用详见example
Package: web3-rush
Web3-rush.py 🚀web3-rush.py is a Python library designed for fast and easy interaction with the Ethereum blockchain🌐. It provides an interface similar to web3.py while utilizing Rust internally, resulting in significantly faster performance⚡.📈 PerformanceWe have benchmarked the execution speed of web3-rush.py against web3.py. The results can be viewed on a separate page here(https://purplesmoke05.github.io/web3-rush.py/dev/bench/). According to the benchmarks, web3-rush.py is approximately 200% faster or more compared to web3.py.🔑 Key FeaturesCreating and managing Ethereum accounts 👤Sending and receiving Ether 💸Deploying and executing smart contracts 📜Retrieving data and transaction information on the Ethereum blockchain 🔍Listening and filtering events 🔔💻 InstallationTo install web3-rush.py, run the following command:pipinstallweb3-rush📚 UsageThe usage of web3-rush.py is very similar to web3.py. Here's a simple example:fromweb3_rushimportWeb3# Connect to Ethereum nodeweb3=Web3('https://your-ethereum-node-url')# Get an accountaccount=web3.eth.accounts[0]# Send Ethertransaction={"from":account,"to":"0x742d35Cc6634C0532925a3b844Bc454e4438f44e","value":web3.toWei(1,"ether"),"gas":21000,"gasPrice":web3.toWei("50","gwei"),"nonce":web3.eth.get_transaction_count(account),}# Sign and send transactiontransaction_hash=web3.eth.send_transaction(transaction)# Get transaction receipttransaction_receipt=web3.eth.wait_for_transaction_receipt(transaction_hash)print(transaction_receipt)📖 DocumentationFor detailed documentation, please visit here(TBD).🤝 ContributingContributions to the project are highly appreciated! We welcome bug reports, feature suggestions, pull requests, and any other form of contribution.⚖️ Licenseweb3-rush.py is released under the GNU General Public License.
Package: web3storagepy
web3.storageThis is IPFS web3.storage unofficial library written in python. I have made it simple and easier to integrate with web3.storage API using this masterpiece of codes.InstallationYou can either install it from git, or using pip.~$gitclonehttps://github.com/tahaafarooq/web3.storage
~$cdweb3.storage
~$pip3install-rrequirements.txt~$python3setup.pyinstall~$pip3installweb3storagepyUsageTo upload a file to the IPFS web3 storage API we will do the following;>>>importweb3storagepy>>>w3s=web3storagepy>>>upload=w3s.upload(file="XXXXXX",token="XXXXXXX")>>>upload{'STATUS_CODE':200,'RESPONSE':'{"cid":"XXXXXXXXXXXXXXXX","carCid":"XXXXXXXXXXXX"}'}Using the CID you are provided with you can decide to check the status of the uploaded file with;>>>importweb3storagepy>>>w3s=web3storagepy>>>status=w3s.status(cid="XXXXXXXX",token="XXXXXXXXXXXX")>>>status{'RESPONSE':'{xxx:xxx}'}You can retrieve all your uploaded files with;>>>importweb3storagepy>>>w3s=web3storagepy>>>all_files=w3s.user_uploads(token="XXXXXXXXX")>>>all_files'XXXXXXXXXXXXXXXXX'You can access your uploaded file by providing only the CID as follows;>>>importweb3storagepy>>>w3s=web3storagepy>>>get_file=w3s.get_upload(cid="XXXXXXXXX")>>>get_file'https://XXXXXXXXX.ipfs.w3s.link'Give it starIf you happen to find this repository useful or helpful , give it a star!IssuesAre you facing any issue with usage of the package, just raise an issue and I will look into fixing it as soon as possibleContributionsIf there is anything yould would like to add warmly welcome, Just fork itDisclaimersThis is not an official package, therefore I'm not responsible for any misinformation or misuse of the package of any kind !!!
Package: web3-token
Web3 Token implementation for pythonUsing this package you can verify web3 token, get signer, signed message and statementGetting itTo download web3-token, either fork this github repo or simply use PyPI via pip.$pipinstallweb3-tokenUsage1 - Importfromweb3_tokenimportWeb3Token2 - Usage:wt=Web3Token(token)signer=wt.get_signer(validate=True)token_data=wt.get_data()statement=wt.statement
Package: web3-token-new
Web3 Token implementation for pythonUsing this package you can verify web3 token, get signer, signed message and statementGetting itTo download web3-token, either fork this github repo or simply use PyPI via pip.$pipinstallweb3-token-newUsage1 - Importfromweb3_tokenimportWeb3Token2 - Usage:wt=Web3Token(token)signer=wt.get_signer(validate=True)token_data=wt.get_data()statement=wt.statement
Package: web3tool
web3tool.pyA Python library for interacting with Ethereum.Python 3.7.2+ supportQuickstartGet started in 5 minutesortake a tourof the library.DocumentationFor additional guides, examples, and APIs, see thedocumentation.Want to help?Want to file a bug, contribute some code, or improve documentation? Excellent! Read up on our
guidelines forcontributing,
then check out issues that are labeledGood First Issue.Questions on implementation or usage? Join the conversation ondiscord.安装twinepip3 install twine打包检查python3 setup.py check打包python3 setup.py sdist build上传twine upload dist/*
Package: web3tools
Web3ToolsWeb3Toolsis an extender for theweb3py libraryUpload PyPi packageSetup your PyPi credentials on~/.pypirc[pypi]
  username = __token__
  password = pypi-tokenAccordingly with the setuptools onsetup.pygenerate a new package for a given project and version. Two files (tar.gzandwhl) will be added todist/python setup.py sdist bdist_wheelUpload the packages withindist/to PyPipip install twine
twine upload dist/*UsageBasic Toolsfrom web3tools import UtilsCreate an ethereum accountaddress, private_key = Utils.create()
keystore = Utils.encrypt(private_key, "myPassword")Get addressprivate_key = Utils.decrypt("myKeystore", "myPassword")
address = Utils.get_address(private_key)Sign a message & Recover signer's addresssignature = Utils.sign_message("myPrivateKey", "myMessage")
address = Utils.recover_message(signature, "myMessage")Ewtfrom web3tools import Ewt
ewt = Ewt()Ewt Authentication, similar tojwtbut using the ethereum encryption keysewt_token = ewt.generate("myPrivateKey")
is_valid = ewt.validate(ewt_token)Blockchain Readerfrom web3tools import Reader
reader = Reader(Providers.INFURA_MAINNET.value.format("myInfuraKey"))Crawl blockchaincurrent_block_number = reader.get_current_block_number()
current_block_info = reader.get_block(current_block_number)
transaction = reader.get_transaction("myTxid")
receipt = reader.get_receipt("myTxid")
gas_price = reader.get_gas_price()Get Wallet Infobalance = reader.get_balance("myWallet")
nonce = reader.get_nonce("myWallet")Read Contractscontract = reader.get_contract_instance("abiFilePath", "contractAddress")
value = reader.call_view(contract, "viewName", "viewArguments")
events = reader.find_events(contract, "eventName", from_block=0, to_block="latest")
events_on_transaction = reader.find_event_receipt(contract, "eventName", "myTxid")Launch Transactionsfrom web3tools import Providers, Transactor
transactor = Transactor(Providers.INFURA_MAINNET.value.format("myInfuraKey"))Send1 EthtoreceiverAddresstransactor.launch_transaction("myPrivateKey", "receiverAddress", transactor.to_wei(1))Call atransferfunction of atoken contractto send1 TokentoreceiverAddresscontract = transactor.get_contract_instance("abiFilePath", "contractAddress")
transactor.launch_function(contract, "myPrivateKey", "transfer",
                           "receiverAddress", transactor.to_wei(1))
Package: web3-upgradeable-contract
Web3 upgradeable contractDeploy contract with transparent upgradeable proxy schema. Inspired indeployProxyimplementation fromOpenZeppelin.Python library to deploy Ethereum contracts using the transparent upgradeable proxy
schema with:Python^3.10Web3^6.0.0Usagefromweb3importWeb3,middlewarefromupgradeable_contractimportUpgradeableContractimportsolcxbox_contract="""// SPDX-License-Identifier: MITpragma solidity ^0.8.0;contract Box {uint256 private value;event ValueChanged(uint256 newValue);function store(uint256 newValue) public {value = newValue;emit ValueChanged(newValue);}function retrieve() public view returns (uint256) {return value;}}"""solcx.install_solc("0.8.19")artifact=solcx.compile_source(box_contract,output_values=["abi","bin"],solc_version="0.8.19",)["<stdin>:Box"]abi,bytecode=artifact["abi"],artifact["bin"]private_key="0x0000000000000000000000000000000000000000000000000000000000000000"rpc_url="http://127.0.0.1:8545"w3=Web3(Web3.HTTPProvider(rpc_url))account=w3.eth.account.from_key(private_key)w3.eth.default_account=account.addressw3.middleware_onion.add(middleware.construct_sign_and_send_raw_middleware(account))contract:UpgradeableContract=w3.eth.contract(abi=abi,bytecode=bytecode,ContractFactoryClass=UpgradeableContract)implementation_address,admin_address,proxy_address=contract.deploy_proxy()print(f"Implementation contract deployed at:{implementation_address}")print(f"ProxyAdmin contract deployed at:{admin_address}")print(f"TransparentUpgradeableProxy contract deployed at:{proxy_address}")
Package: web3-wallet-connector
Web3 Token ConnectorPython library that facilitates interaction with ethereum wallet address.UsageCreate an instance of aWalletclassInstantiate with any web3 provider accepted by Web3 class:fromweb3.providers.websocketimportWebsocketProviderfromweb3_wallet_connectorimportWalletprovider=WebsocketProvider("wss://<node_address_here>")wallet_checksum_address="<your_address_here>"wallet_private_key="<your_private_key>"wallet=Wallet(provider,wallet_checksum_address,wallet_private_key)Send ETH or ERC20 tokensSend ETH:to_address="<recipient_address_here>"# Amount in Weiamount=10000000# Transaction priority (low, medium or high)priority="medium"# Returns transaction receipttx_receipt=wallet.send(to_address,amount,priority)Send ERC20 token:to_address="<recipient_address_here>"# Amount in Weiamount=10000000# Transaction priority (low, medium or high)priority="medium"# Example: MANA token eth addresstoken_address="0x0f5d2fb29fb7d3cfee444a200298f468908cc942"# Returns transaction receipttx_receipt=wallet.send(to_address,amount,priority,token_address)Get ETH or ERC20 token balanceGet ETH balance:balance=wallet.get_balance()Get ERC20 token balance:# Example: MANA token eth addresstoken_address="0x0f5d2fb29fb7d3cfee444a200298f468908cc942"balance=wallet.get_balance(token_address)