官网文档说明:https://fisco-bcos-documentation.readthedocs.io/zh_CN/latest/docs/sdk/python_sdk/install.html
Python:3.0 +
Microsoft Visual C++ ,下载地址:https://visualstudio.microsoft.com/zh-hans/visual-cpp-build-tools/
solc编译器,下载地址
git clone https://github.com/FISCO-BCOS/python-sdk # 若因为网络问题导致长时间无法执行上面的命令,请尝试以下命令: git clone https://gitee.com/FISCO-BCOS/python-sdk
修改client_config.py.template
,配置solc
编译器路径,solc二进制下载请参考bcos_solc.py
中的描述,
# ---------runtime related-------------- # path of solc compiler solc_path = "D:\\Program Files (x86)\\solidity-windows\\solc.exe"
将client_config.py.template
拷贝为client_config.py
pip install -r requirements.txt #若网络失败,使用以下命令 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt
将client_config.py 文件中channel_host
为实际的IP,channel_port
为channel_listen_port
IP和端口在,在BOS部署机器的节点目录下config.ini 文件中获取
# ---------client communication config-------------- client_protocol = "channel" # or PROTOCOL_CHANNEL to use channel prototol # client_protocol = PROTOCOL_CHANNEL remote_rpcurl = "http://192.168.31.129:8545" # 采用rpc通信时,节点的rpc端口,和要通信的节点*必须*一致,如采用channel协议通信,这里可以留空 channel_host = "192.168.31.129" # 采用channel通信时,节点的channel ip地址,如采用rpc协议通信,这里可以留空 channel_port = 20200 # 节点的channel 端口,如采用rpc协议通信,这里可以留空
将节点sdk目录下的所以文件拷贝到bin目录下
到此python-sdk环境以搭建完成
在此项目的目录下,打开cmd,可通过以下命令进行验证
python console.py list
输出结果如下说明成功:
INFO >> user input : [‘list‘] : RPC commands [getNodeVersion] [getBlockNumber] [getPbftView] [getSealerList] [getObserverList] [getConsensusStatus] [getSyncStatus] [getPeers] [getGroupPeers] [getNodeIDList] [getGroupList] [getPendingTxSize] [getTotalTransactionCount] [getPendingTransactions] [getBlockHashByNumber] [number] [getTransactionByHash] [hash] [contract_name] [getTransactionReceipt] [hash] [contract_name] [getCode] [contract_address] [getTransactionByBlockHashAndIndex] [blockHash] [transactionIndex] [contract_name] [getTransactionByBlockNumberAndIndex] [blockNumber] [transactionIndex] [contract_name] [getSystemConfigByKey] [tx_count_limit/tx_gas_limit] [getBlockByNumber] [blockNumber] True/False [getBlockByHash] [blockHash] True/False
接口名 |
描述 |
参数 |
getNodeVersion |
获取区块链节点版本信息 |
无 |
getBlockNumber |
获取最新块高 |
无 |
getPbftView |
获取PBFT视图 |
无 |
getSealerList |
获取共识节点列表 |
无 |
getObserverList |
获取观察者节点列表 |
无 |
getConsensusStatus |
获取区块链节点共识状态 |
无 |
getSyncStatus |
获取区块链节点同步状态 |
无 |
getPeers |
获取区块链节点的连接信息 |
无 |
getGroupPeers |
获取指定群组的共识节点 |
无 |
getNodeIDList |
获取节点及其连接节点的列表 |
无 |
getGroupList |
获取节点所属群组的群组ID列表 |
无 |
getBlockByHash |
根据区块哈希获取区块信息 |
区块哈希 |
getBlockByNumber |
根据区块高度获取区块信息 |
区块高度 |
getBlockHashByNumber |
根据区块高度获取区块哈希 |
区块高度 |
getTransactionByHash |
根据交易哈希获取交易信息 |
交易哈希 |
getTransactionByBlockHashAndIndex |
根据交易所属的区块哈希、 |
交易所属的区块哈希 |
getTransactionByBlockNumberAndIndex |
根据交易所属的区块高度、 |
交易所属的区块高度 |
getTransactionReceipt |
根据交易哈希获取交易回执 |
交易哈希 |
getPendingTransactions |
获取交易池内所有未上链的交易 |
无 |
getPendingTxSize |
获取交易池内未上链的交易数目 |
无 |
getCode |
根据合约地址查询的合约数据 |
合约地址 |
getTotalTransactionCount |
获取指定群组的上链交易数目 |
无 |
getSystemConfigByKey |
获取系统配置 |
系统配置关键字 |
deploy |
部署合约 |
合约binary code |
call |
调用合约 |
合约地址 |
sendRawTransaction |
发送交易 |
合约地址 |
sendRawTransactionGetReceipt |
发送交易 |
合约地址 |
FISCO-BCOS-Python-SDK 在window系统的安装
原文:https://www.cnblogs.com/luyilan/p/15104505.html