python - 如何使用 Dataproc 中的 Jupyter notebook 获取 GCS Bucket 中的文件列表?

标签 python google-cloud-platform jupyter-notebook google-cloud-storage google-cloud-dataproc


我最近开始在我的项目中使用 GCP,但在使用 Dataproc 集群中的 Jupyter notebook 中的存储桶时遇到了困难。目前,我有一个包含一堆文件的存储桶,以及一个带有 Jupyter 笔记本的 Dataproc 集群。我想要做的是遍历存储桶中的所有文件并从中提取数据以创建数据框。

我可以使用以下代码一次访问一个文件:data = spark.read.csv('gs://BUCKET_NAME/PATH/FILENAME.csv'),但是有数百个文件,我无法为每个文件编写一行代码。通常,我会做这样的事情:

导入操作系统
对于 os.listdir(目录)中的文件名:
...

但这在这里似乎行不通。所以,我想知道如何在 Dataproc 集群中使用 Jupyter notebook 迭代存储桶中的文件?

非常感谢任何帮助!

最佳答案

您可以使用以下命令列出存储桶中的元素:

from google.cloud import storage
client = storage.Client()
BUCKET_NAME = 'your_bucket_name'
bucket = client.get_bucket(BUCKET_NAME)
elements = bucket.list_blobs()
files=[a.name for a in elements]

如果您的存储桶中没有文件夹,名为文件的列表将包含文件的名称。

关于python - 如何使用 Dataproc 中的 Jupyter notebook 获取 GCS Bucket 中的文件列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67520854/

相关文章:

python - 我如何在 Atom 中使用新的 ipython 内核?

python - 查找给定函数 f 的输出中涉及的所有函数和类?

Python 内存错误 : The processed data set does not fit into 32-bit process address space

google-cloud-platform - 无法从 Google 容器注册表将 docker 镜像拉入 Kubernetes Pod

docker - 从另一个Docker容器中运行一个命令行命令并共享文件

jupyter-notebook - Jupyter Notebook新电池类型默认

python - 使用 dicom2nifti 转换无法正常工作

python - 从不同文件导入变量的正确方法是什么?

ssh - 无法使用GCloud Compute访问VM

docker - 从 UI 管理 Kubernetes 集群