El mejor método para obtener información de dirección masiva (total enviado, recibido y saldo final)

Necesito revisar una lista grande (alrededor de 100 000) de direcciones de bitcoin y, si tienen un saldo final, encontrarlo, así como el total enviado y recibido. Estoy trabajando en python y he revisado varias API, pero hasta ahora he encontrado la mejor solución para obtener los datos JSON de https://blockchain.info/

Yo suelo:

urllib.urlopen("https://blockchain.info/multiaddr?cors=true&active="+testStr)

donde testStr es hasta 23 direcciones, separadas por |

Esto devuelve una página que descargo en un json y analizo los datos que necesito. Me pregunto si hay algún método más rápido para obtener esta información, en lugar de varias llamadas a blockchain.info. Gracias

Respuestas (1)

Si realiza una investigación científica o académica, probablemente no usará blockchain.info. Porque esto significaría que básicamente confías en bitcoin.info como fuente de blockchain. Realmente consideraría crear y consultar su propia copia de blockchain instalando y sincronizando un nodo Bitcoin-Core .

Un simple script JSON RPC de python (o un idioma diferente) podría resolver su problema. (requiere un nodo de núcleo de bitcoin sincronizado)

  1. Agregue 1000 (de los 100'000) direcciones a través de la llamada RPCimportaddress
  2. Obtenga el saldo de cada dirección llamando a `listreceivedbyaddress
  3. Detener bitcoin-core
  4. Eliminar wallet.dat
  5. Iniciar bitcoin-core

--> volver a 1)

Puede aumentar o disminuir el marco de dirección (1000) dependiendo de los recursos de CPU/Mem/Disco de su sistema.

Hola. ¡Gracias por la aportación! Primero tengo que intentar codificar esto, pero ¿es probable que sea más lento o más rápido que cuestionar la cadena de bloques? Por el momento, mi principal preocupación es la velocidad.
Es muy probable que acceder a blockchain.info sea más rápido porque tienen un índice por dirección. Debe volver a escanear después de cada cuadro (+/- 1000 direcciones), lo que puede llevar minutos de servicio. Pero blockchain.info podría bloquear su acceso debido al alto tráfico o similar.