加密货币地址余额查询技能Skill check-crypto-address-balance

这个技能用于使用免费公共API检查加密货币地址的余额,支持比特币、以太坊、BSC、Solana、莱特币等多链查询,无需API密钥,关键词:加密货币、区块链、余额查询、API、免费、多链支持。

链开发 0 次安装 0 次浏览 更新于 3/22/2026

名称: 检查加密货币地址余额 描述: 使用免费公共API检查跨多个区块链的加密货币钱包余额。支持比特币、以太坊、BSC、Solana、莱特币和其他主要链,无需API密钥即可进行基本查询。

检查加密货币地址余额技能

使用免费公共API查询跨多个区块链的加密货币地址余额。支持比特币、以太坊、BSC、Solana、莱特币和其他主要链,无需API密钥即可进行基本查询。

支持的链及最佳免费API

API 基础URL 速率限制 备注
比特币 (BTC) Blockchain.info https://blockchain.info ~1 请求/10秒 最可靠,无需密钥
比特币 (BTC) Blockstream https://blockstream.info/api 慷慨 Esplora API,开源
以太坊 (ETH) Etherscan https://api.etherscan.io/api 5 请求/秒(免费) 可选密钥以获得更高限制
以太坊 (ETH) Blockchair https://api.blockchair.com 30 请求/分钟 多链支持
BSC (BNB) BscScan https://api.bscscan.com/api 5 请求/秒(免费) 与Etherscan相同API
Solana (SOL) 公共RPC https://api.mainnet-beta.solana.com 根据节点变化 免费公共节点
Solana (SOL) Solscan API https://public-api.solscan.io 10 请求/秒 基本查询无需密钥
莱特币 (LTC) BlockCypher https://api.blockcypher.com/v1/ltc/main 200 请求/小时 多链API
莱特币 (LTC) Chain.so https://chain.so/api/v2 慷慨 简单JSON响应
多链 Blockchair https://api.blockchair.com 30 请求/分钟 BTC, ETH, LTC, DOGE, BCH

技能

比特币 (BTC) 余额

# 使用Blockchain.info(单位:聪,除以100000000转换为BTC)
curl -s "https://blockchain.info/q/addressbalance/1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa"

# 使用Blockstream(单位:聪)
curl -s "https://blockstream.info/api/address/1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa" | jq '.chain_stats.funded_txo_sum - .chain_stats.spent_txo_sum'

Node.js:

async function getBTCBalance(address) {
  const res = await fetch(`https://blockchain.info/q/addressbalance/${address}`);
  const satoshis = await res.text();
  return parseFloat(satoshis) / 1e8; // 将聪转换为BTC
}

以太坊 (ETH) 余额

# 使用Etherscan(单次查询无需API密钥,返回单位:wei)
curl -s "https://api.etherscan.io/api?module=account&action=balance&address=0xde0b295669a9fd93d5f28d9ec85e40f4cb697bae&tag=latest" | jq -r '.result'

# 使用Blockchair(返回单位:wei,带额外元数据)
curl -s "https://api.blockchair.com/ethereum/dashboards/address/0xde0b295669a9fd93d5f28d9ec85e40f4cb697bae" | jq '.data[].address.balance'

Node.js:

async function getETHBalance(address) {
  const url = `https://api.etherscan.io/api?module=account&action=balance&address=${address}&tag=latest`;
  const res = await fetch(url);
  const data = await res.json();
  return parseFloat(data.result) / 1e18; // 将wei转换为ETH
}

BSC (BNB智能链) 余额

# 使用BscScan(与Etherscan相同API)
curl -s "https://api.bscscan.com/api?module=account&action=balance&address=0x8894E0a0c962CB723c1976a4421c95949bE2D4E3&tag=latest" | jq -r '.result'

Node.js:

async function getBSCBalance(address) {
  const url = `https://api.bscscan.com/api?module=account&action=balance&address=${address}&tag=latest`;
  const res = await fetch(url);
  const data = await res.json();
  return parseFloat(data.result) / 1e18; // 将wei转换为BNB
}

Solana (SOL) 余额

# 使用公共RPC(单位:lamports,1 SOL = 1e9 lamports)
curl -s https://api.mainnet-beta.solana.com -X POST -H "Content-Type: application/json" -d '
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "getBalance",
  "params": ["vines1vzrYbzLMRdu58ou5XTby4qAqVRLmqo36NKPTg"]
}' | jq '.result.value'

# 使用Solscan API(直接返回SOL)
curl -s "https://public-api.solscan.io/account/vines1vzrYbzLMRdu58ou5XTby4qAqVRLmqo36NKPTg" | jq '.lamports'

Node.js:

async function getSOLBalance(address) {
  const res = await fetch('https://api.mainnet-beta.solana.com', {
    method: 'POST',
    headers: { 'Content-Type': 'application/json' },
    body: JSON.stringify({
      jsonrpc: '2.0',
      id: 1,
      method: 'getBalance',
      params: [address]
    })
  });
  const data = await res.json();
  return data.result.value / 1e9; // 将lamports转换为SOL
}

莱特币 (LTC) 余额

# 使用Chain.so(直接返回LTC)
curl -s "https://chain.so/api/v2/get_address_balance/LTC/LTC_ADDRESS/6" | jq -r '.data.confirmed_balance'

# 使用BlockCypher(返回单位:聪)
curl -s "https://api.blockcypher.com/v1/ltc/main/addrs/LTC_ADDRESS/balance" | jq '.balance'

Node.js:

async function getLTCBalance(address) {
  const res = await fetch(`https://chain.so/api/v2/get_address_balance/LTC/${address}/6`);
  const data = await res.json();
  return parseFloat(data.data.confirmed_balance);
}

多链辅助函数 (Node.js)

const APIS = {
  BTC: (addr) => `https://blockchain.info/q/addressbalance/${addr}`,
  ETH: (addr) => `https://api.etherscan.io/api?module=account&action=balance&address=${addr}&tag=latest`,
  BSC: (addr) => `https://api.bscscan.com/api?module=account&action=balance&address=${addr}&tag=latest`,
  LTC: (addr) => `https://chain.so/api/v2/get_address_balance/LTC/${addr}/6`
};

const DIVISORS = { BTC: 1e8, ETH: 1e18, BSC: 1e18, LTC: 1 };

async function getBalance(chain, address) {
  if (chain === 'SOL') {
    const res = await fetch('https://api.mainnet-beta.solana.com', {
      method: 'POST',
      headers: { 'Content-Type': 'application/json' },
      body: JSON.stringify({
        jsonrpc: '2.0', id: 1, method: 'getBalance', params: [address]
      })
    });
    const data = await res.json();
    return data.result.value / 1e9;
  }
  
  const url = APIS[chain](address);
  const res = await fetch(url);
  
  if (chain === 'BTC') {
    const satoshis = await res.text();
    return parseFloat(satoshis) / DIVISORS[chain];
  } else if (chain === 'LTC') {
    const data = await res.json();
    return parseFloat(data.data.confirmed_balance);
  } else {
    const data = await res.json();
    return parseFloat(data.result) / DIVISORS[chain];
  }
}

// 用法: getBalance('ETH', '0xde0b295669a9fd93d5f28d9ec85e40f4cb697bae').then(console.log);

代理提示

您有一个加密货币余额检查技能。当用户提供加密货币地址时,从地址格式检测链(BTC/ETH/BSC/SOL/LTC):
- BTC:以1、3或bc1开头
- ETH:以0x开头(42个字符)
- BSC:以0x开头(42个字符,上下文相关)
- SOL:base58字符串(32-44个字符,无0x)
- LTC:以L或M开头

使用上表中的适当免费公共API,尊重速率限制。以原生货币(BTC、ETH、BNB、SOL、LTC)返回余额,并进行适当的小数转换。

速率限制最佳实践

  • 对同一API的请求之间实现1-2秒延迟。
  • 缓存结果至少30秒以避免冗余查询。
  • 在速率限制错误(HTTP 429)时使用指数退避。
  • 对于生产环境,考虑获取免费API密钥(Etherscan、BscScan)以获得更高限制。

额外链(通过Blockchair)

Blockchair支持:BTC、ETH、LTC、DOGE、BCH、Dash、Ripple、Groestlcoin、Stellar、Monero(需要查看密钥)、Cardano和Zcash(t地址)。

另请参见