批准 Uniswap 在以太坊区块链 [web3py] 上花费 WETH 的问题

问题描述 投票:0回答:0

我正在尝试批准 uniswap 路由器花费一定数量的 WETH。我已经为我写了一个脚本,它似乎可以在 BSC(WBNB 和 PancakeSwap 路由器)上工作。

但是,现在我尝试在以太坊区块链(WETH 和 Uniswap Router)上进行。这结束了 op 给我一个错误:{'code': -32601, 'message': 'Method not found'}

我从https://etherscan.io/address/0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2复制了abi

UNISWAP_ROUTER = "0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D"
WETH = "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2"

web3 = Web3(HTTPProvider(PROVIDER))
token = web3.eth.contract(address=WETH, abi=abi)

nonce = web3.eth.get_transaction_count(WALLET_ADDRESS)
amount = web3.to_wei(0.01, 'ether')
block = web3.eth.get_block('latest')
next_gas_price = math.ceil(block.baseFeePerGas)

x = token.functions.approve(UNISWAP_ROUTER, amount).build_transaction({
"from": WALLET_ADDRESS,
"maxFeePerGas": next_gas_price,
"gas": 100_000,
"nonce": nonce
})

谢谢

使用 WBNB/Pancakeswap 在 BSC 上进行了尝试。

ethereum smartcontracts web3py uniswap web3
© www.soinside.com 2019 - 2024. All rights reserved.