Python

如何使用 web3.py 製作乙太坊交易?

  • June 1, 2018

我是乙太坊的新手。使用pywallet,在我的項目中,我在本地製作了乙太坊錢包。Infura API 被用作我的提供者。

https://mainnet.infura.io/MYTOKEN

所以我得到了我的錢包使用 web3.py 生成的地址餘額。我想將乙太幣發送給某個收件人(地址)。但我無法進行交易,也找不到有關此的文件。幫我。

編輯添加問題 預設gasprice是多少?如何確定gasprice和gas量?謝謝。

這在web3py 文件中有描述

設置好提供程序並實例化 web3 後,您可以執行以下操作:

signed_txn = w3.eth.account.signTransaction(dict(
   nonce=w3.eth.getTransactionCount('yourAddress'),
   gasPrice = w3.eth.gasPrice, 
   gas = 100000,
   to='recipientAddress',
   value=web3.toWei(12345,'ether')
 ),
 'yourprivatekey')

w3.eth.sendRawTransaction(signed_txn.rawTransaction)

它將給出交易的雜湊值。如果你有你的密鑰文件但你不知道你的私鑰,你可以使用web3py 中包含的這個工具來獲取它

with open('path to your keyfile') as keyfile:
   encrypted_key = keyfile.read()
   private_key = w3.eth.account.decrypt(encrypted_key, 'thepasswordforyour_keyfile')

希望這可以幫助。

引用自:https://ethereum.stackexchange.com/questions/50159