Продавать токены и получать BNB вместо wBNB?

#python #web3 #binance-smart-chain

Вопрос:

Я создал функцию, которая продает токен в смарт-цепочке BSC. Однако я хочу получить его непосредственно в BNB, а не в wBNB. Как я могу развернуть полученный wBNB?

 def sell_drdc(wallet_address, token_address, wallet_no):  if not is_approved(token_address):  approve(wallet_address, private_key)  erc20 = web3.eth.contract(token_address, abi=erc20Abi)  token_value = erc20.functions.balanceOf(wallet_address).call()  if token_value != 0:  pancakeswap2_txn = router.functions.swapExactTokensForTokensSupportingFeeOnTransferTokens (token_value, 0, [DRDC_Address, wbnb_contract], wallet_address, (int(time())   900)).buildTransaction({  'from': wallet_address,  'nonce': web3.eth.get_transaction_count(wallet_address),  })  signed_txn = web3.eth.account.sign_transaction(pancakeswap2_txn, private_key=private_key)  try:  tx_token = web3.eth.send_raw_transaction(signed_txn.rawTransaction)  web3.eth.waitForTransactionReceipt(tx_token, timeout=900)  display_success() # Just function that sends success message  update_text()  except ValueError:  display_error() # Just a function that sends the error  except UnboundLocalError:  sell_drdc(wallet_address, token_address, wallet_no) # Attempts to repeat if something goes wrong  

Ответ №1:

Мне удалось понять, в чем дело, Так и должно быть

 swapExactTokensForETHSupportingFeeOnTransferTokens