在 pyfilesystem 的 s3 文件系统中打开文件失败
Opening a file in pyfilesystem's s3 filesystem fails
我试图在 pyfilesystem 的 s3 文件系统中简单地打开一个文件:
>>> s3fs.listdir('dfparks/test')
['test.txt']
>>> s3fs.open('dfparks/test/test.txt')
我收到错误:
fs.errors.ResourceNotFound: resource 'dfparks/test/test.txt' not found
我已经尝试了路径/s3 的每个变体 url 我能想到但我总是遇到未找到的错误。
fs.s3fs 默认在严格模式下工作,检查是否存在目录标记(以“/”结尾的键)。您可以通过将 strict=False 传递给 S3FS 构造函数或将 "strict=0" 附加到传递给 fs.open_fs
的 url 来关闭严格模式
但是,不幸的是,即使在 strict=False 模式下,S3FS 仍然会在少数地方进行这些检查。我的 PR 正在等待审核修复:https://github.com/PyFilesystem/s3fs/pull/60。同时,您可以使用 fs-s3fs-ng 软件包安装固定版本:
pip install fs-s3fs-ng
另外默认开启非严格模式并开启S3流(其他PR等待接受)
如果这对你有用,请告诉我。
我试图在 pyfilesystem 的 s3 文件系统中简单地打开一个文件:
>>> s3fs.listdir('dfparks/test')
['test.txt']
>>> s3fs.open('dfparks/test/test.txt')
我收到错误:
fs.errors.ResourceNotFound: resource 'dfparks/test/test.txt' not found
我已经尝试了路径/s3 的每个变体 url 我能想到但我总是遇到未找到的错误。
fs.s3fs 默认在严格模式下工作,检查是否存在目录标记(以“/”结尾的键)。您可以通过将 strict=False 传递给 S3FS 构造函数或将 "strict=0" 附加到传递给 fs.open_fs
的 url 来关闭严格模式但是,不幸的是,即使在 strict=False 模式下,S3FS 仍然会在少数地方进行这些检查。我的 PR 正在等待审核修复:https://github.com/PyFilesystem/s3fs/pull/60。同时,您可以使用 fs-s3fs-ng 软件包安装固定版本:
pip install fs-s3fs-ng
另外默认开启非严格模式并开启S3流(其他PR等待接受)
如果这对你有用,请告诉我。