从 Etherscan Token Tracker 获取代币持有者数量和交易数量

Posted

技术标签:

【中文标题】从 Etherscan Token Tracker 获取代币持有者数量和交易数量【英文标题】:Get number of token holders and number of transactions from Etherscan Token Tracker 【发布时间】:2019-07-27 02:52:52 【问题描述】:

我已经使用 web3.js 获得了总供应令牌的数量 但是现在我面临的问题是我不知道如何获取代币持有者的数量(我不需要持有者列表)和交易数量。我认为这非常相似。是否可以使用 web3.js 来做到这一点? 我在 rinkeby 网络中使用我的测试令牌进行测试: https://rinkeby.etherscan.io/token/0x3ead2f2dacdcba32f9834a71464cae15a88755e8 或主网币安币https://etherscan.io/token/0xB8c77482e45F1F44dE1745F52C74426C631bDD52

【问题讨论】:

【参考方案1】:

ERC-20 代币不直接支持这一点。因此,如果你想这样做,你必须自己添加额外的功能,并在每次转移发生时跟踪谁拥有代币,谁没有。然后你可以创建一个函数来获取这个数字。由于 ERC-20 不支持它,您不会在 etherscan 上找到它,您必须自己获取它。添加额外功能不会阻止令牌成为 ERC-20。

另一种方法是迭代所有地址,这是一个非常糟糕的主意。

或者,如果你有一个正在运行的服务器,你可以监听合约上的所有事件,并在你自己的数据库中跟踪持有者。

【讨论】:

非常感谢您的回答!所以 etherscan 显示了有关总供应量、持有者数量和交易数量的信息,但是使用 web3.js,我们只能获得任何地址的总供应量或余额,而无需添加额外功能,但不能获得持有者数量?太奇怪了…… 您可以获得与 etherscan 相同的信息。 Etherscan 没什么特别的。我的意思是你不能直接从合同中获得这些信息。 Etherscan 只查看交易,您也可以使用 web3 来做到这一点。

以上是关于从 Etherscan Token Tracker 获取代币持有者数量和交易数量的主要内容,如果未能解决你的问题,请参考以下文章

从 Etherscan API 获取合约 ABI 后创建合约时出错

为啥从 ethers.js 获取块的时间戳不等于在 etherscan.io 中显示?

合约地址交易列表 - Etherscan API

从 ETH 地址获取代币数量

高可用FastDFS多Group多Storage多Tracker主备结合SpringBoot

ERC-721:如何获取所有令牌 ID?