Python 如何使用Dataproc中的Jupyter笔记本获取GCS存储桶中的文件列表?

Python 如何使用Dataproc中的Jupyter笔记本获取GCS存储桶中的文件列表?,python,google-cloud-platform,jupyter-notebook,google-cloud-storage,google-cloud-dataproc,Python,Google Cloud Platform,Jupyter Notebook,Google Cloud Storage,Google Cloud Dataproc,我最近开始在我的项目中使用GCP,在Dataproc集群中使用Jupyter笔记本中的bucket时遇到了困难。目前,我有一个存储桶,里面有一堆文件,还有一个带有Jupyter笔记本的Dataproc集群。我试图做的是检查bucket中的所有文件,并从中提取数据以创建数据帧 我可以使用以下代码一次访问一个文件:data=spark.read.csv('gs://BUCKET\u NAME/PATH/FILENAME.csv'),但有数百个文件,我无法为每个文件编写一行代码。通常,我会这样做: 导


我最近开始在我的项目中使用GCP,在Dataproc集群中使用Jupyter笔记本中的bucket时遇到了困难。目前,我有一个存储桶,里面有一堆文件,还有一个带有Jupyter笔记本的Dataproc集群。我试图做的是检查bucket中的所有文件,并从中提取数据以创建数据帧

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

导入操作系统

os.listdir(目录)中文件名的

但这在这里似乎不起作用。所以,我想知道,如何在Dataproc集群中使用Jupyter笔记本迭代存储桶中的文件


非常感谢您的帮助

您可以使用以下命令列出bucket中的元素:

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]

如果您的bucket中没有文件夹,则名为files的列表将包含这些文件的名称。

非常感谢!这有帮助!我还阅读了有关此函数的更多信息,并且,为了将来的读者,这里不需要创建
bucket
<代码>客户端。列出blob(BUCKET\u NAME)也可以