Skip to content

Instantly share code, notes, and snippets.

@mikepocket
Created December 30, 2019 20:53
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mikepocket/724bbafa14180d81f5cb822c8747ff67 to your computer and use it in GitHub Desktop.
Save mikepocket/724bbafa14180d81f5cb822c8747ff67 to your computer and use it in GitHub Desktop.
import requests
import json
import urllib
from tinydb import TinyDB, Query
import datetime
db = TinyDB('./db.json')
totalfree = 0
totalfrozen = 0
totallocked = 0
dattime = datetime.datetime.now()
now = str(dattime.year) + "-" + str(dattime.month) + "-" + str(dattime.day) + " " + str(dattime.hour) + ":" + str(dattime.minute) + ":" + str(dattime.second)
print(now)
response = requests.get("https://explorer.binance.org/api/v1/asset-holders?page=1&rows=1000&asset=RUNE-B1A")
addresses = response.json()['addressHolders']
response2 = requests.get("https://explorer.binance.org/api/v1/asset-holders?page=2&rows=1000&asset=RUNE-B1A")
addresses = addresses + response2.json()['addressHolders']
response3 = requests.get("https://explorer.binance.org/api/v1/asset-holders?page=3&rows=1000&asset=RUNE-B1A")
addresses = addresses + response3.json()['addressHolders']
for address in addresses:
curaddr = address["address"]
# exclude top 5 wallets
if curaddr in ["bnb1qdf8x6ey3097jze4puv2s78f9hg2esnr7rasuu", "bnb1vgmhv2ry9p5lj7t08lyfa72qtmp6ngjjnvkn6v", "bnb1axqc2gan462z6npw3c33srp4950mr5x28uc6wu", "bnb13a7gyv5zl57c0rzeu0henx6d0tzspvrrakxxtv", "bnb13ug5mpgs4zjpw7n46h9u45adsxsw0ch73q2fdp"]:
continue
link = "https://dex.binance.org/api/v1/account/" + curaddr
response_balances = requests.get(link)
assets = response_balances.json()['balances']
for asset in assets:
if asset["symbol"] == "RUNE-B1A":
totalfree = totalfree + float(asset["free"])
totalfrozen = totalfrozen + float(asset["frozen"])
totallocked = totallocked + float(asset["locked"])
db.insert({ 'Address': curaddr, 'Free': float(asset["free"]), 'Crawltime': now})
print("total free: " + str(totalfree))
print("total frozen: " + str(totalfrozen))
print("total locked: " + str(totallocked))
@mikepocket
Copy link
Author

#read top 10 wallets with highest amount of free RUNE

from tinydb import TinyDB, Query
db = TinyDB('./db.json')

od = sorted(db.all(), key=lambda k: k['Free'], reverse=True)
for i in range(0, 9):
print(od[i])

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment