自动向IPFS n添加文件

2024-05-16 12:59:59 发布

您现在位置:Python中文网/ 问答频道 /正文

在我的Raspberry Pi上,我运行了一个Python脚本,它确保正在测量室温(通过DHT22),然后每隔半小时将温度记录到CVS文件中。在

在脚本运行的每一天都会创建一个新的CVS文件。因此,文件名为temp_dd-mm-yy.cvs。这些文件都保存在我的loggings文件夹中。在

现在我想自动将cvs文件pin add到IPFS网络,因为我不想每天在终端中写入ipfs add <file.cvs>。在

换句话说,有没有一种方法可以运行一段代码来确保每24小时将logging文件夹中的所有文件都添加到IPFS网络中?在

我尝试过ipfsapi,但我没能从中得到任何有用的东西。在


Tags: 文件网络脚本文件夹add文件名记录pi
1条回答
网友
1楼 · 发布于 2024-05-16 12:59:59

直接从python中执行此操作有两种方法。要么使用subprocesscall命令调用ipfs二进制文件,要么直接使用restapi使用urllib。在

要使用restapi,您必须将数据作为POST请求添加,数据作为表单数据传递。在

下面是添加两个“文件”的等效curl请求:

$ curl -X POST -F 'file1=somedata' -F 'file2=somemoredata' http://localhost:5001/api/v0/add
{"Name":"QmaJLd3cTDQFULC4j61nye2EryYTbFAUPKVAzrkkq9wQ98",
  "Hash":"QmaJLd3cTDQFULC4j61nye2EryYTbFAUPKVAzrkkq9wQ98","Size":"16"}
{"Name":"Qman7GbdDxgT3SzkzeMinvUkaiVduzKHJGE5P2WGPqV2uq",
  "Hash":"Qman7GbdDxgT3SzkzeMinvUkaiVduzKHJGE5P2WGPqV2uq","Size":"20"}

使用shell,您可以只做一个cron任务,例如

^{pr2}$

每天。这将是相当有效的,直到您的日志目录变得真正大,即使它一次又一次地添加文件。在

当然,您需要将散列放在某个地方或使用ipn,这样人们才能真正看到这些数据。在

相关问题 更多 >