_mirazcash-zec-logo.png

Explorador de bloques ZCASH 💛

Explorador de bloques ZCASH

March 23, 2025· 4 min read
72 score

Informe Técnico Zexplorer

Resumen del proyecto

Zexplorer es un bot de Telegram diseñado para explorar la blockchain de Zcash de manera sencilla, rápida y confiable. Su objetivo es acercar la información de la red a los usuarios, permitiéndoles consultar bloques, transacciones y saldos sin necesidad de recurrir a exploradores web externos. Está orientado a usuarios que buscan transparencia y control sobre sus fondos, pero también a desarrolladores que deseen integrar análisis de datos de Zcash en tiempo real.

1. Arquitectura y Tecnologías

Lenguaje y entorno

El proyecto está desarrollado sobre Python 3.x, elegido no por moda sino por su equilibrio entre simplicidad, potencia y la amplitud de su ecosistema. Cada componente se ejecuta dentro de un entorno virtual (venv), garantizando independencia de dependencias y estabilidad entre sistemas.

El código es multiplataforma, con detección automática del sistema operativo mediante platform, lo que permite adaptar rutas, fuentes y configuraciones tanto en Windows como en Linux sin necesidad de modificaciones manuales. La versión de prueba se ejecuta en Windows, mientras que la versión principal corre en un servidor SSV Linux.

La comunicación con el usuario se canaliza a través de la Telegram Bot API, implementada con la librería telebot, que facilita la gestión de comandos, el envío de mensajes enriquecidos, imágenes y teclados interactivos.

El procesamiento visual está a cargo de Pillow (PIL), utilizado para generar composiciones gráficas, superponer datos dinámicos o integrar códigos QR directamente sobre las imágenes.

Las conexiones con fuentes externas de datos (blockchains, mercados, indexadores) se manejan con la librería requests, base de toda la capa de comunicación HTTP. Para la visualización analítica, se utiliza matplotlib.pyplot, que permite construir gráficos de precios, volumen y métricas específicas (como las de Zcash) sin depender de herramientas externas.

Cuando las APIs no exponen la información que necesito, el sistema recurre a la automatización web. A través de selenium, con webdriver_manager y Chrome en modo headless, es posible interactuar con paneles, dashboards o exploradores que no ofrecen endpoints públicos, extrayendo la información directamente del DOM.

Por último, la gestión de imágenes y gráficos se realiza íntegramente en memoria con io.BytesIO, evitando archivos temporales y manteniendo la operación limpia, rápida y segura.

2. Fuentes de Información

  • API de 3xpl: fuente general, transacciones, nodos y eventos de la red Zcash en tiempo real.
  • API de blockchair: fuente general, transacciones, nodos y eventos de la red Zcash en tiempo real.
  • API de Coingecko: utilizada para obtener precios históricos, métricas de mercado y capitalización de ZEC.
  • API de Binance: provee datos de trading, volumen y cotizaciones en tiempo real para cruces ZEC/USDT y ZEC/BTC.
  • Scraping web (Selenium + Chrome headless): cuando las APIs no entregan lo que necesito, lo tomo por la fuerza.
    Se utiliza automatización web para extraer información oculta o restringida en dashboards, paneles de minería y block explorers que no exponen endpoints públicos.
  • Dirección propia de nodo Zebra + Lightwallet: carover0.xyz:9067. Esta es la fuente de datos del comando /zebra, que permite mostrar el estado de la red Zcash y transacciones en tiempo real directamente en Telegram.

3. Funcionalidades Principales

Exploración de bloques:

  • Consulta de cualquier bloque de la blockchain.
  • Información detallada: número de bloque, timestamp, transacciones, recompensas y validadores confirmantes.
    Exploración de transacciones:
  • Entradas y salidas completas, hash, direcciones involucradas y valor transferido.
  • Estado de la transacción (confirmada o pendiente).
  • Nodos por pais y version del software.

Eventos y movimientos de fondos:

  • Registro de eventos en la red y presentación en Telegram.
  • Resumen de entradas y salidas por dirección, incluyendo tokens compatibles.

Generación de códigos QR:

  • Compatible con direcciones t y u de Zcash.
  • Permite envíos y recepción de fondos de manera rápida y segura.

Verificación de saldo transparente:

  • Consulta de saldos de cualquier dirección.
  • Visualización de balances totales de pools de minería y fondos de usuarios.

Visualización y gráficos dinámicos:

  • Creación de gráficos de precios, volumen y capitalización usando matplotlib.
  • Integración de overlays de información en imágenes de respuesta.

Automatización web:

  • Scraping de dashboards de trading o block explorers con Selenium y Chrome headless.
  • Capacidad de actualizar métricas que no se exponen por API pública.

4. Funcionalidades Avanzadas y Técnicas

Manejo de tiempos y cooldowns: time.sleep y timestamps para controlar rate-limits y refrescos de comandos.

Interactividad: teclados inline (InlineKeyboardMarkup) con botones de cierre, visualización de eventos y navegación entre datos.

Optimización de recursos: uso de streams en memoria (io.BytesIO) para enviar imágenes y gráficos sin ocupar disco.

Soporte multiplataforma: detección de sistema operativo para ajustar rutas de fuentes y binarios.

Procesamiento de tokens y precios: ajuste dinámico de fuentes y formato de precios según valor (por ejemplo, decimales variables para valores <1 USD).

Actualización automática con visualización en formato de imagen o mensaje enriquecido.

Novedades

  • /zebra Muestra el estado de la red Zcash en tiempo real directamente en Telegram.
  • /preciozec Incluye precio actual de ZEC, para compartir en grupos.
  • /noticias Noticias de diferentes fuentes para compartir en un grupo actualizadas cada 1 hora.

5. Objetivos del Proyecto

Brindar transparencia y acceso directo a la blockchain de Zcash.

Facilitar la auditoría independiente de transacciones y balances.

Generar reportes visuales y dinámicos de datos de mercado y blockchain.

Mantener un código abierto, ligero y adaptable a otros proyectos cripto.


💛 Zexplorer

translate



Related Articles