Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何将S3 bucket装载为本地文件系统?_Python_Amazon Web Services_Amazon S3_Python S3fs - Fatal编程技术网

Python 如何将S3 bucket装载为本地文件系统?

Python 如何将S3 bucket装载为本地文件系统?,python,amazon-web-services,amazon-s3,python-s3fs,Python,Amazon Web Services,Amazon S3,Python S3fs,我有一个python应用程序在AWS上的Jupiter笔记本上运行。我在python代码中加载了一个C库,它需要一个文件路径。 我想从S3存储桶访问此文件 我尝试使用s3fs: s3 = s3fs.S3FileSystem(anon=False) 使用s3.ls(“..”)列出我的所有存储桶文件。。。到目前为止还可以。但是,我使用的库实际上应该在我无法访问的地方使用s3变量。我只能传递到c库的路径 有没有一种方法可以在不需要调用的情况下安装s3存储桶 s3.open() 我认为它应该像这样工作

我有一个python应用程序在AWS上的
Jupiter笔记本上运行。我在python代码中加载了一个
C库
,它需要一个文件路径。 我想从S3存储桶访问此文件

我尝试使用s3fs:

s3 = s3fs.S3FileSystem(anon=False)
使用
s3.ls(“..”)
列出我的所有存储桶文件。。。到目前为止还可以。但是,我使用的库实际上应该在我无法访问的地方使用s3变量。我只能传递到c库的路径

有没有一种方法可以在不需要调用的情况下安装s3存储桶
s3.open()

我认为它应该像这样工作,而不使用s3。因为我无法更改我在内部使用的库来使用s3变量

with s3.open("path/to/s3/file",'w') as f:
      df.to_csv(f)

with open("path/to/s3/file",'w') as f:
      df.to_csv(f)
还是我完全错了

iam使用的c库在python中作为DLL加载,我调用一个函数:

lib.OpenFile(path/to/s3/file)

我必须将
s3
的路径传递到库OpenFile函数中。

如果您希望将s3存储桶作为文件系统的一部分进行装载,请使用s3fs fuse


这将使其成为文件系统的一部分,常规的文件系统功能将如您所期望的那样工作。

如果您希望将S3存储桶作为文件系统的一部分安装,那么请使用s3fs fuse


这将使其成为文件系统的一部分,常规文件系统功能将如您所期望的那样工作。

如果您的目标是windows,则可以使用rclonewinfsp将S3存储桶装载为本地文件系统

简化的步骤是:
rclone配置
创建远程
rclone mount remote:bucket*
安装




可能与这个问题并不完全相关,但我相信这对很多来到这里的用户来说都是非常重要的。

如果您的目标是windows,那么可以使用rclonewinfsp将S3存储桶装载为本地文件系统

简化的步骤是:
rclone配置
创建远程
rclone mount remote:bucket*
安装




这可能与这个问题不完全相关,但我相信很多来到这里的用户都会这么做。

我认为s3fs也在做同样的事情,您的代码是在进程上下文中做的;它仅适用于该流程。如果您使用Fuse,那么它将安装在系统级别,并且驱动路径可用于所有进程;它仅适用于该流程。如果使用Fuse,则它将安装在系统级别,并且驱动器路径可用于所有进程。