Web3Py扩展器工具

web3tools的Python项目详细描述


Web3工具

Web3Toolsweb3py library的扩展程序

用法-基本工具

from web3tools import Utils

创建以太坊帐户

^{pr2}$

获取地址

private_key = Utils.decrypt("myKeystore", "myPassword")
address = Utils.get_address(private_key)

签署邮件并恢复签名者的地址

signature = Utils.sign_message("myPrivateKey", "myMessage")
address = Utils.recover_message(signature, "myMessage")

用法-Ewt

from web3tools import Ewt
ewt = Ewt(expiration=30)

Ewt身份验证,类似于jwt,但使用以太坊加密密钥

ewt_token = ewt.generate("myPrivateKey")
is_valid = ewt.validate(ewt_token)

使用-区块链阅读器

from web3tools import Reader
reader = Reader(Providers.INFURA_MAINNET.value.format("myInfuraKey"))

爬网区块链

current_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()

获取钱包信息

balance = reader.get_balance("myWallet")
nonce = reader.get_nonce("myWallet")

阅读合同

contract = 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")

使用-启动事务

from web3tools import Provider, Transactor
transactor = Transactor(Providers.INFURA_MAINNET.value.format("myInfuraKey"))

发送1 EthreceiverAddress

transactor.launch_transaction("myPrivateKey", "receiverAddress", transactor.to_wei(1))

调用token contracttransfer函数,将1令牌发送到receiverAddress

contract = transactor.get_contract_instance("abiFilePath", "contractAddress")
transactor.launch_function(contract, "myPrivateKey", "transfer",
                           "receiverAddress", transactor.to_wei(1))

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Java Spring REST API JSON在postman中显示,但在测试中未“看到”   java如何以编程方式检查旋转设备?   java力穷举开关   amazon web services DynamoDB从Java更新列表失败   java Android studio IDE更改波斯注释字体   java如何将postgresql添加到OpenShift Spring应用程序?   java RecycleView分页是否在末尾添加新项?   如何通过java获取移动设备信息?   java为什么Apache Commons StringEscapeUtils escapeXML10不能在groovy中工作?   函数式编程java curry现有的静态函数   java与JList的合作