【发布时间】:2021-12-30 22:17:58
【问题描述】:
我不知道这是否可行,但我希望能够与多个钱包进行交易,而我可以尝试这样做的唯一方法(据我所知)是遍历每个地址和密钥。我想知道是否有一种方法可以在单独的线程中发送每个事务,以便所有事务同时执行而不是一个接一个地执行? 附言如果您对实现这一目标有更好的想法,请通过各种方式分享。谢谢!
这是我目前为止的循环
adrresses = ["address1", "address2", "address3"]
keys = ["key1", "key2", "key3"]
for addr, key in zip(adrresses, keys):
txn = router_contract.functions.swapExactTokensForTokensSupportingFeeOnTransferTokens(amountIn, 0, [tokenIn, tokenOut], addr, int(time.time() + 10000))
swap_txn = txn.buildTransaction({
'from': addr,
'gas': 2500000,
'gasPrice': web3.toWei('5','gwei'),
'nonce': web3.eth.get_transaction_count(addr)})
signed_txn = web3.eth.account.sign_transaction(swap_txn, key)
tx_receipt = web3.eth.send_raw_transaction(signed_txn.rawTransaction)
txHash = str(web3.toHex(tx_receipt))
print(txHash)
```
【问题讨论】:
标签: multithreading web3py