wip get ballances
This commit is contained in:
parent
8c83ea6c87
commit
02c1ee7ed4
@ -14,8 +14,7 @@ from solana.rpc.websocket_api import connect
|
|||||||
from solana.rpc.async_api import AsyncClient
|
from solana.rpc.async_api import AsyncClient
|
||||||
from solana.rpc.commitment import Confirmed
|
from solana.rpc.commitment import Confirmed
|
||||||
from solana.rpc.types import TokenAccountOpts
|
from solana.rpc.types import TokenAccountOpts
|
||||||
|
import base64
|
||||||
|
|
||||||
import os
|
import os
|
||||||
from dotenv import load_dotenv
|
from dotenv import load_dotenv
|
||||||
|
|
||||||
@ -75,12 +74,14 @@ async def get_token_balance(wallet_address, token_address):
|
|||||||
return 0
|
return 0
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
async def get_wallet_balances(wallet_address):
|
async def get_wallet_balances(wallet_address):
|
||||||
balances = {}
|
balances = {}
|
||||||
logging.info(f"Getting balances for wallet: {wallet_address}")
|
logging.info(f"Getting balances for wallet: {wallet_address}")
|
||||||
|
|
||||||
opts = TokenAccountOpts(
|
opts = TokenAccountOpts(
|
||||||
program_id=Pubkey.from_string("TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA")
|
program_id=Pubkey.from_string("TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),
|
||||||
|
encoding="jsonParsed" # Ensure encoding is set to jsonParsed
|
||||||
)
|
)
|
||||||
|
|
||||||
# Get all token accounts for the wallet
|
# Get all token accounts for the wallet
|
||||||
@ -89,7 +90,7 @@ async def get_wallet_balances(wallet_address):
|
|||||||
opts,
|
opts,
|
||||||
commitment=Confirmed
|
commitment=Confirmed
|
||||||
)
|
)
|
||||||
|
|
||||||
if response.value:
|
if response.value:
|
||||||
for account in response.value:
|
for account in response.value:
|
||||||
mint = account.account.data.parsed.info.mint
|
mint = account.account.data.parsed.info.mint
|
||||||
@ -98,13 +99,14 @@ async def get_wallet_balances(wallet_address):
|
|||||||
amount = float(balance_response.value.uiAmount)
|
amount = float(balance_response.value.uiAmount)
|
||||||
balances[mint] = amount
|
balances[mint] = amount
|
||||||
logging.debug(f"Balance for {mint}: {amount}")
|
logging.debug(f"Balance for {mint}: {amount}")
|
||||||
|
|
||||||
sol_balance = await solana_client.get_balance(Pubkey.from_string(wallet_address))
|
sol_balance = await solana_client.get_balance(Pubkey.from_string(wallet_address))
|
||||||
if sol_balance.value:
|
if sol_balance.value:
|
||||||
balances['SOL'] = sol_balance.value / 1e9
|
balances['SOL'] = sol_balance.value / 1e9
|
||||||
|
|
||||||
return balances
|
return balances
|
||||||
|
|
||||||
|
|
||||||
async def get_non_zero_token_balances(wallet_address):
|
async def get_non_zero_token_balances(wallet_address):
|
||||||
non_zero_balances = {}
|
non_zero_balances = {}
|
||||||
logging.info(f"Getting non-zero balances for wallet: {wallet_address}")
|
logging.info(f"Getting non-zero balances for wallet: {wallet_address}")
|
||||||
|
Loading…
x
Reference in New Issue
Block a user