基于python实现读取区块信息
- 编写简单的服务器与客户端。
socket编程思路:
TCP服务端
(1)建套接字,绑定套接字到本地IP与端口
socket.socket(socket.AF_INET,socket.SOCK_STREAM) , s.bind()
(2)开始监听连接 s.listen()
(3)进入循环,不断接收客户端的连接请求
(4)接收数据,修改并保存数据。
TCP客户端
(1)创建套接字,连接远端地址
socket.socket(socket.AF_INET,socket.SOCK_STREAM) , s.connect()
(2)利用web3连接区块链私链
(3)进入循环,不断接收区块链私链的信息
2. 搭建区块链私链
具体区块链的搭建请参考。
3. 将客户端与区块链私链相连
将客户端与区块链相连接的方法:
web3 =Web3(HTTPProvider(http:// + ip + : + rpcport, request_kwargs={
'timeout': 60}))
连上之后便可以通过 web3.isConnected()来判断是否与区块链连接,判断连接后根据最新区块数是否有更新来判断区块链是否在交易或者挖矿,记录挖矿或交易时候的时间戳与账户这两个信息(作图根据时间戳与账户来实现)。
关于判断是否交易则根据更新的区块里面是交易信息是否为空来判断。其中数据可以保存在远端服务器(目前还未完成)。
5. 基于flask框架和socket完成服务器的搭建。
1.初始服务器&#x