Los servicios de Python leen el estado de Solana a través de JSON-RPC (getAccountInfo, getTokenAccountsByOwner, getSignaturesForAddress) y, para NFTs y activos comprimidos, la API Digital Asset Standard (DAS). Usa solana-py para el RPC principal y httpx para los endpoints HTTP de DAS en proveedores Agave 4.1.1.
# Decodificar cuenta de Anchor con AnchorPy después de obtener datos brutos# account = await program.account["MyState"].fetch(pubkey)# Paginación de firmasbefore = Nonewhile True: batch = await client.get_signatures_for_address(addr, before=before, limit=1000) if not batch.value: break before = batch.value[-1].signature
getProgramAccounts sin filtros - descarga el estado completo del programa. Solución:memcmp en el discriminador; usar un indexador.
Asumir DAS en cada URL RPC - el devnet público puede carecer de DAS. Solución: usar explícitamente un proveedor capaz de DAS.
Confusión de codificación - base64 vs jsonParsed cambia la forma de la respuesta. Solución: elegir por llamada y documentar.
Límites de tasa durante las copias de seguridad - los escaneos secuenciales activan 429s. Solución: limitar la velocidad, dividir por slot o exportar desde BigTable.
Cuentas de tokens cerradas - las cuentas con saldo cero pueden omitirse. Solución: manejar listas vacías; rastrear los Mints por separado.