如何读取,写入和列出Google存储桶中的文件夹和文件?

我想使用Python读取/写入Google Cloud Storage存储桶中的文件。

假设我在中有一个文件夹gs://my_project/data

  • 如何列出以上文件夹中的文件夹和文件?

  • 如何读写文件?

西鲁龙

有几种方法可以执行这些操作。最常见的一种方法是使用适用于Python的本地Google Cloud Storage API

特别是,使用此API的第0步是对GCP设置身份验证,这包括设置服务帐户,下载其json凭据并设置指向该帐户的环境变量:

export GOOGLE_APPLICATION_CREDENTIALS="[PATH-TO-JSON-CREDS]"


1.列出文件和文件夹

在GCS中,没有“目录” /“文件夹”的概念只有存储桶和Blob /对象。但是,/in blob名称可用于模拟类似文件夹的层次结构。

列出来自的Blob gs://my_project/data

from google.cloud import storage

client = storage.Client()
bucket = client.bucket('my_project')

blobs = list(bucket.list_blobs(prefix='data/'))

2.读写文件

从中列出的第一个blob中读取gs://my_project/data

target_blob = blobs[0]

# read as string
read_output = target_blob.download_as_string()

要写入新的Blob,我发现除了写入本地文件并从文件上传外,别无其他方法。

target_blob = bucket.blob('new_blob.txt')

local_tmp_path = 'tmp.txt'

# write string
with open(local_tmp_path, 'w') as f:
   f.write('Hello World')

with open(local_tmp_path, 'r') as f:
   target_blob.upload_from_file(f)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Python-在存储桶中列出文件和文件夹

如何列出 Google Drive 根文件夹中的文件和文件夹

在 Laravel 中压缩和下载 Amazon S3 存储桶文件和文件夹

将文件和文件夹从Google存储桶下载到本地文件夹

如何比较本地文件夹和存储桶中的文件夹?

如何使用 UI 在 GCS 中重命名存储桶和文件夹?

S3 / Cloudfront:如何在存储桶中列出文件夹的内容

如何列出给定GCS存储桶中的所有顶级文件夹?

Google Cloud Storage - 如何访问存储桶内的静态资源等文件夹和文件 - Spring Boot

Presto:如何从s3中读取在子文件夹中分区的整个存储桶?

在AWS S3存储桶的特定“文件夹”中列出文件

如何使用Google Cloud API获取给定存储桶中的文件夹列表

如何将 Google 应用引擎中的静态文件夹与存储桶相关联

如何使用 Google Cloud Storage 将文件夹目标设置到存储桶中?

应用程序如何在 Documents 文件夹中写入和读取文件?

如何读取和写入多个子文件夹?

如何在Android设备上的内部存储中访问/读取/写入Documents文件夹?

如何在javascript中递归列出N级以下的Google云端硬盘文件和文件夹?

Google云端存储:如何使用gsutil获取存储桶/文件夹中的新文件列表

在DrEdit中列出Google云端硬盘中的所有文件和文件夹

如何用一些简短的方法将所有文件和文件夹从一个文件夹移到php中S3存储桶的另一个文件夹?

从多个文件夹的s3存储桶中仅读取特定的json文件

列出文件夹和文件

如何搜索和列出具有特定模式的文件和文件夹?

仅列出s3存储桶中的子文件夹

PowerShell for AWS:仅列出S3存储桶中的“文件夹”吗?

使用.Net列出Google Drive V2中的所有文件和文件夹

在Python中列出所有Google云端硬盘文件和文件夹,并保存ID

如何读取和存储图像文件夹 (MATLAB)