Python统计Ethereum代币数量

/ ETH / 0 条评论 / 1450浏览
#!/usr/bin/python

import json
import requests

headers = {'Content-Type': 'application/json'}
url = 'http://localhost:8545'
postdatas = '{"method":"eth_accounts","params":[],"id":1,"jsonrpc":"2.0"}'
arequests = requests.post(url, data=postdatas, headers=headers)
accounts = json.loads(arequests.content)['result']
#print(accounts)
total = 0
for account in accounts:

   postaccountdatas = '{"method":"eth_call","params":[{"to":"0xdac17f958d2ee523a2206206994597c13d831ec7","data":"0x70a08231000000000000000000000000' + account[2:42]  + '"}, "latest"],"id":1,"jsonrpc":"2.0"}'
   #print(postaccountdatas)
   brequests = requests.post(url, data=postaccountdatas, headers=headers)
   #print(json.loads(brequests.content))
   if '0x0000000000000000000000000000000000000000000000000000000000000000' != json.loads(brequests.content)['result']:

        result = json.loads(brequests.content)['result']
        total = total + int(result, 16)
        #print(total)

print('USDT ERC20: ' + str(total/1000000))