![](/img/trans.png)
[英]Is there any python module through which I can mount a S3 bucket into a filesystem?
[英]How to mount S3 bucket as local FileSystem?
我有一個 python 應用程序在 AWS 上的Jupiter-notebook
上運行。 我將一個C-library
加載到我的 python 代碼中,該代碼需要一個文件路徑。 我想從 S3 存儲桶訪問這個文件。
我嘗試使用 s3fs:
s3 = s3fs.S3FileSystem(anon=False)
使用s3.ls('..')
列出我所有的存儲桶文件......到目前為止還可以。 但是,我正在使用的庫實際上應該在我無法訪問的地方使用 s3 變量。 我只能將路徑傳遞給 c 庫。
有沒有辦法以某種方式安裝 s3 存儲桶,我不必調用s3.open()
,並且可以調用open(/path/to/s3)
在某個隱藏的地方真正安裝了 s3 存儲桶本地文件系統?
我認為它應該在不使用 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,我稱之為 ZC1C425268E68384F14ZA7C179:
lib.OpenFile(path/to/s3/file)
我必須將s3
的路徑傳遞到庫 OpenFile function 中。
如果您希望將 S3 存儲桶掛載為文件系統的一部分,請使用 s3fs-fuse
https://github.com/s3fs-fuse/s3fs-fuse
這將使它成為文件系統的一部分,並且常規文件系統功能將按您的預期工作。
如果您的目標是windows ,則可以使用rclone和winfsp將 S3 存儲桶掛載為本地文件系統
簡化的步驟是:
rclone config
創建遠程
rclone mount remote:bucket *
掛載
https://github.com/rclone/rclone
https://rclone.org/
https://github.com/billziss-gh/winfsp
http://www.secfs.net/winfsp/
可能與這個問題不完全相關,但我確信這將是許多來到這里的用戶。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.