BlockAPI库
blockapi的Python项目详细描述
布洛克API
与账户相关的基本交易信息、交易信息等。 支持硬币列表:
coin | API name | supported operations |
---|---|---|
XTZ | TzscanAPI | balance, transactions, activations, originations, delegations, endorsements, bakings |
TzStatsAPI | staking (balance, rewards) | |
ATOM | CosmosAPI | balance, transactions, rewards, delegates, votes |
DCR | DcrdataAPI | balance, transactions |
ADA | CardanoExplorerAPI | balance, transactions |
ZEC | ChainSoAPI | balance, transactions |
MercerweissAPI | balance | |
ZchainAPI | balance | |
ETC | BlockscoutAPI | balance |
NEO | NeoscanAPI | balance, transactions |
ZEN | ZensystemAPI | balance |
DASH | ChainSoAPI | balance, transactions |
CryptoIDAPI | balance | |
DOGE | ChainSoAPI | balance, transactions |
BNB | BinanceAPI | balance,transactions |
EOS | EosparkAPI | balance, transactions |
GreymassAPI | balance | |
BCH | BtcAPI | balance |
XLM | StellarAPI | balance |
RVN | RavencoinAPI | balance |
TRX | TronscanAPI | balance |
LTC | BlockcypherAPI | balance |
ChainSoAPI | balance, transactions | |
CryptoIDAPI | balance | |
Ltc1TrezorAPI | balance, transactions | |
BTC | BlockchainInfoAPI | balance, transactions |
BlockonomicsAPI | balance, transactions | |
ChainSoAPI | balance, transactions | |
Btc1TrezorAPI | balance, transactions | |
Btc2TrezorAPI | balance, transactions | |
BitpayAPI | balance | |
GRS | CryptoIDAPI | balance |
ETH | AlethioAPI | balance, transactions, events |
EtherscanAPI | balance, transactions | |
EthplorerAPI | balance | |
ONT | OntioAPI | balance, transactions |
VET | DigonchainAPI | balance |
BOS | BlockchainosAPI | balance, transactions |
LUNA | TerraMoneyAPI | balance, transactions, delegations |
入门
这些说明将为您提供一个项目的副本,并在本地计算机上运行,以便进行开发和测试。在
先决条件
python3.x,PIP(如果您想这样安装的话)。在
安装
只需使用pip即可安装库:
pip install blockapi
或者通过跑步:
^{pr2}$使用示例
获取帐户余额的示例用法:
import blockapi
myobj = blockapi.api.BlockchainInfoAPI("bitcoin-address-here")
myobj.get_balance()
有些硬币有多种API可用。有了get_random_api_class_for_coin这是可能的 要随机选择任何可用的API,请执行以下操作:
myapi = blockapi.get_random_api_class_for_coin('BTC')('1F1tAaz5x1HUXrCNLbtMDqcw6o5GNn4xqX')
myapi.get_balance()
要直接选择第一个随机工作API并要求其提供帐户余额:
>>> blockapi.get_balance_from_random_api('BTC','16ftSEQ4ctQFDtVZiUBusQUjRrGhM3JYwe')
0.010034040000000001
可以要求一个硬币的工作api列表。如果它们正常工作,首先会自动检查它们(测试是通过请求平衡来完成的)。只返回通过此检查的API:
>>> blockapi.get_working_apis_for_coin('BTC')
(<class 'blockapi.api.blockchaininfo.BlockchainInfoAPI'>, <class 'blockapi.api.blockonomics.BlockonomicsAPI'>, <class 'blockapi.api.insight.BitpayAPI'>, <class 'blockapi.api.trezor.Btc2TrezorAPI'>, <class 'blockapi.api.trezor.Btc1TrezorAPI'>)
如果在创建过程中检查了地址的有效性,则 无效,正在引发ValueError异常:
>>> import blockapi
>>> blockapi.api.CosmosAPI('blahblah')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/srv/apps/blockapi/src/blockapi/blockapi/services.py", line 195, in __init__
self.check_validity()
File "/srv/apps/blockapi/src/blockapi/blockapi/services.py", line 201, in check_validity
self.symbol, self.address_info.address
ValueError: Not a valid ATOM address: b'blahblah'
可以显示地址验证的结果,包括有效性、网络类型、地址类型或提供的地址是否为扩展地址的信息。 并非所有硬币的所有细节都可用:
>>> import blockapi
>>> myapi = blockapi.api.TzscanAPI('valid tezos address here')
>>> myapi.address_info
ValidationResult(name='tezos', ticker='xtz', address=b'valid tezos-address here', valid=True, network='both', is_extended=False, address_type='originated_account')
运行测试
要运行包含的测试,只需发出:
make test
贡献
待定
作者
- **Devmons s s.r.o.-初始工作-crypkit
另请参阅参与此项目的contributors的列表。在
学分
- **Chris prist-moneywagon library我们从-moneywagon获得了许多想法
- **Joe Black-地址验证库-coinaddr
许可证
这个项目是在麻省理工学院许可下授权的-有关详细信息,请参阅LICENSE.md文件
- 项目
标签: