您当前的位置: 首页 >  Python
  • 0浏览

    0关注

    1477博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

IPFS python api 示例

软件工程小施同学 发布时间:2019-11-30 16:28:48 ,浏览量:0

// 1. 安装ipfsapi
$ pip install ipfsapi

// 2. 新建python文件,test.py
// 接口类型
// a. 查看节点ID
api.id()
// b. 上传单一文件
api.add('test.txt')
// c. 上传目录
api.add('fake_dir', recursive=True)
// d. 查看文件内容
api.cat('QmWxS5aNTFEc9XbMX1ASvLET1zrqEaTssqt33rVZQCQb22')
// e. 下载文件
api.get('QmWxS5aNTFEc9XbMX1ASvLET1zrqEaTssqt33rVZQCQb22')
// f. 查看本地已存储的所有文件
api.pin.ls(type='all')



// 3. 运行test.py
$ python test.py


一、查看节点ID

import ipfsapi

# 连接IPFS,需要先启动节点服务器daemon
api = ipfsapi.connect('127.0.0.1', 5001)

# 查看节点ID
res = api.id()

print(res)

{'Addresses': ['/ip4/127.0.0.1/tcp/4001/ipfs/QmS2C4MjZsv2iP1UDMMLCYqJ4WeJw8n3vXx1VKxW1UbqHS',                '/ip6/::1/tcp/4001/ipfs/QmS2C4MjZsv2iP1UDMMLCYqJ4WeJw8n3vXx1VKxW1UbqHS'],  'AgentVersion': 'go-ipfs/0.4.10',  'ID': 'QmS2C4MjZsv2iP1UDMMLCYqJ4WeJw8n3vXx1VKxW1UbqHS',  'ProtocolVersion': 'ipfs/0.1.0',  'PublicKey': 'CAASpgIwgg ... 3FcjAgMBAAE='}  

 

二、上传文件

import ipfsapi

# 连接IPFS,需要先启动节点服务器daemon
api = ipfsapi.connect('127.0.0.1', 5001)

# 上传文件
res = api.add('test.txt')

print(res)

{'Hash': 'QmWxS5aNTFEc9XbMX1ASvLET1zrqEaTssqt33rVZQCQb22', 'Name': 'test.txt'}

 

三、上传目录

import ipfsapi

# 连接IPFS,需要先启动节点服务器daemon
api = ipfsapi.connect('127.0.0.1', 5001)

# 上传目录,fake_dir是一个文件夹
res = api.add('fake_dir', recursive=True)

print(res)

[{'Hash': 'QmQcCtMgLVwvMQGu6mvsRYLjwqrZJcYtH4mboM9urWW9vX',   'Name': 'fake_dir/fsdfgh'},  {'Hash': 'QmNuvmuFeeWWpxjCQwLkHshr8iqhGLWXFzSGzafBeawTTZ',   'Name': 'fake_dir/test2/llllg'},  {'Hash': 'QmX1dd5DtkgoiYRKaPQPTCtXArUu4jEZ62rJBUcd5WhxAZ',   'Name': 'fake_dir/test2'},  {'Hash': 'Qmenzb5J4fR9c69BbpbBhPTSp2Snjthu2hKPWGPPJUHb9M',   'Name': 'fake_dir'}]  

四、查看文件内容

import ipfsapi

# 连接IPFS,需要先启动节点服务器daemon
api = ipfsapi.connect('127.0.0.1', 5001)

# 查看文件内容
res = api.cat('QmWxS5aNTFEc9XbMX1ASvLET1zrqEaTssqt33rVZQCQb22')

print(res)

hello ipfs!

 

五、下载文件

import ipfsapi

# 连接IPFS,需要先启动节点服务器daemon
api = ipfsapi.connect('127.0.0.1', 5001)

# 下载文件
res = api.get('QmWxS5aNTFEc9XbMX1ASvLET1zrqEaTssqt33rVZQCQb22')

print(res)

hello ipfs!

 

六、查看本地已存储的所有文件

import ipfsapi

# 连接IPFS,需要先启动节点服务器daemon
api = ipfsapi.connect('127.0.0.1', 5001)

# 查看本地已存储的所有文件
res = api.pin.ls(type='all')

print(res)

{u'Keys': {u'QmYCvbfNbCwFR45HiNP45rwJgvatpiW38D961L5qAhUM5Y': {u'Type': u'indirect'}, u'QmXgqKTbzdh83pQtKFb19SpMCpDDcKR2ujqk3pKph9aCNF': {u'Type': u'indirect'}, u'QmejvEPop4D7YUadeGqYWmZxHhLc4JBUCzJJHWMzdcMe2y': {u'Type': u'indirect'}, u'QmZTR5bcpQD7cFgTorqxZDYaew1Wqgfbd2ud9QqGPAkK2V': {u'Type': u'indirect'}, u'QmY5heUM5qgRubMDD1og9fhCPA6QdkMp3QCwd4s7gJsyE7': {u'Type': u'indirect'}, u'QmQ5vhrL7uv6tuoN9KeVBwd4PwfQkXdVVmDLUZuTNxqgvm': {u'Type': u'indirect'}, u'QmPZ9gcCEpqKTo6aq61g2nXGUhM4iCL3ewB6LDXZCtioEB': {u'Type': u'indirect'}, u'QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn': {u'Type': u'recursive'}, u'QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv': {u'Type': u'recursive'}, u'QmTJrZ2vBWsiCR97jsJxMt9rCPqkpxXdL6pXY9QKwAA4Ww': {u'Type': u'recursive'}}}

 

 

 

 

 

部分参考自:https://blog.csdn.net/ns2250225/article/details/79278516

 

关注
打赏
1665320866
查看更多评论
立即登录/注册

微信扫码登录

0.1097s