Open
Description
Describe the bug
I want to transfer AMP to MATIC(not WMATIC),but I got a error
Traceback (most recent call last):
File "D:\uniswap-python\examples\qyx_test.py", line 29, in <module>
data = uniswap.make_trade(amp, matic, qty=qty, slippage=0.1, fee=3000)
File "D:\uniswap-python\uniswap\decorators.py", line 38, in approved
return method(self, *args, **kwargs)
File "D:\uniswap-python\uniswap\uniswap.py", line 473, in make_trade
input_token, qty, recipient, fee, slippage, fee_on_transfer
File "D:\uniswap-python\uniswap\uniswap.py", line 690, in _token_to_eth_swap_input
self._get_tx_params(),
File "D:\uniswap-python\uniswap\uniswap.py", line 1443, in _build_and_send_tx
transaction = function.build_transaction(tx_params)
File "D:\uniswap-python\venv\lib\site-packages\web3\contract\contract.py", line 340, in build_transaction
**self.kwargs,
File "D:\uniswap-python\venv\lib\site-packages\web3\contract\utils.py", line 232, in build_transaction_for_function
prepared_transaction = fill_transaction_defaults(w3, prepared_transaction)
File "cytoolz\\functoolz.pyx", line 263, in cytoolz.functoolz.curry.__call__
File "D:\uniswap-python\venv\lib\site-packages\web3\_utils\transactions.py", line 132, in fill_transaction_defaults
default_val = default_getter(w3, transaction)
File "D:\uniswap-python\venv\lib\site-packages\web3\_utils\transactions.py", line 72, in <lambda>
"gas": lambda w3, tx: w3.eth.estimate_gas(tx),
File "D:\uniswap-python\venv\lib\site-packages\web3\eth\eth.py", line 293, in estimate_gas
return self._estimate_gas(transaction, block_identifier)
File "D:\uniswap-python\venv\lib\site-packages\web3\module.py", line 74, in caller
method_str, params, error_formatters, null_result_formatters
File "D:\uniswap-python\venv\lib\site-packages\web3\manager.py", line 251, in request_blocking
response, params, error_formatters, null_result_formatters
File "D:\uniswap-python\venv\lib\site-packages\web3\manager.py", line 209, in formatted_response
apply_error_formatters(error_formatters, response)
File "D:\uniswap-python\venv\lib\site-packages\web3\manager.py", line 85, in apply_error_formatters
formatted_resp = pipe(response, error_formatters)
File "cytoolz\\functoolz.pyx", line 680, in cytoolz.functoolz.pipe
File "cytoolz\\functoolz.pyx", line 655, in cytoolz.functoolz.c_pipe
File "D:\uniswap-python\venv\lib\site-packages\web3\_utils\contract_error_handling.py", line 139, in raise_contract_logic_error_on_revert
raise ContractLogicError(message, data=data)
web3.exceptions.ContractLogicError: execution reverted: Insufficient WETH9
To Reproduce
this is my code
w3 = Web3(Web3.HTTPProvider('https://rpc-mainnet.maticvigil.com',
request_kwargs={"proxies": proxies}))
w3.middleware_onion.inject(geth_poa_middleware, layer=0)
uniswap = Uniswap(address=address, private_key=private_key, version=3, web3=w3)
qty = 5 * 10 ** 18
amp = w3.to_checksum_address("0x0621d647cecbFb64b79E44302c1933cB4f27054d")
matic = w3.to_checksum_address("0x0000000000000000000000000000000000001010")
data = uniswap.make_trade(amp, matic, qty=qty, slippage=0.1, fee=3000)
print(data)
Additional context
I set in the constants.py ETH_ADDRESS = "0x0000000000000000000000000000000000001010"