【问题标题】:How do I list objects stored in a Google Cloud storage bucket using Python?如何使用 Python 列出存储在 Google Cloud 存储桶中的对象?
【发布时间】:2020-02-12 14:49:45
【问题描述】:
让我先说我是全新的。我用 SQL 和 SAS 编写代码。
我需要列出存储在 Google Cloud 存储桶中的所有对象。 Web GUI 不足,因为我试图在超过 6K 的文件中找到一个文件。
我在 Google Cloud Datalab 中并使用 Python 3.6。简单地创建这些对象的列表(最好是我可以踢到本地 csv 的列表)的最简单方法是什么?
谢谢
【问题讨论】:
标签:
python
google-cloud-storage
【解决方案1】:
正如here 解释的那样,以下代码将列出存储桶中的所有对象。
from google.cloud import storage
def list_blobs(bucket_name):
"""Lists all the blobs in the bucket."""
# bucket_name = "your-bucket-name"
storage_client = storage.Client()
# Note: Client.list_blobs requires at least package version 1.17.0.
blobs = storage_client.list_blobs(bucket_name)
for blob in blobs:
print(blob.name)
在blob.name 中有每个对象的名称,在代码中我们将其打印到标准输出。正如您所说,您希望将此输出保存到文本文件中,您可以通过附加此变量来实现。
Storage 的文档非常可靠,并且包含指向包含所有客户端代码的 GitHub 存储库的链接。
还有一个命令行实用程序gsutil,它使这些东西在 bash 脚本等中变得非常简单。