如何在 Google Colab 中列出 Kaggle 数据集中的所有文件?

问题描述 投票:0回答:1

我已经在 Google Colab 中试验 Kaggle API 一段时间了,但遇到了以下问题。我可以轻松地验证我的凭据,并且使用以下方法下载整个数据集以及特定文件没有问题:

!kaggle datasets download -d <user>/<dataset>
!kaggle datasets download <user>/<dataset> -f <specific_file>

但是,我无法获取数据集中所有文件的列表(我想将其保存在变量中)。

每当我使用时:

api.dataset_list_files('<user>/<dataset>').files

我得到一个列表,其中的空格等于相应数据集中的文件数量。我在互联网上没有找到类似的内容,所以我想这可能是最近出现的错误/问题。另外,我其实可以用:

!kaggle datasets files <user>/<dataset>

正确列出前 20 个文件,但这不是很有帮助,因为我不知道如何查看其余文件,也不知道如何将其保存在变量中。

我想也许我可以想出一个使用 Selenium 或类似的东西的复杂解决方案,但我认为这有点矫枉过正。这就是为什么我来这里寻求经验丰富的 Kaggle API 用户的智慧,或者也遇到并解决过这个问题的人的智慧。你能帮我一下吗?

python dataset google-colaboratory kaggle
1个回答
0
投票

我在本地计算机上安装了

kaggle
并使用选项
--help

进行了检查
$ kaggle datasets files --help

usage: kaggle datasets files [-h] [-v] [--page-token PAGE_TOKEN] [--page-size PAGE_SIZE] [dataset]

options:
  -h, --help            show this help message and exit
  dataset               Dataset URL suffix in format <owner>/<dataset-name> (use "kaggle datasets list" to show options)
  -v, --csv             Print results in CSV format (if not set print in table format)
  --page-token PAGE_TOKEN
                        Page token for results paging.
  --page-size PAGE_SIZE
                        Number of items to show on a page. Default size is 20, max is 200

它表明您可以使用

--page-size 200
获取最多200个文件。如需了解更多信息,您可能需要获取
PAGE_TOKEN
才能加载下一页。但我(还不)不知道如何获得这个令牌。使用普通 API 可能会将此值作为 JSON 响应中的元素之一发送。

© www.soinside.com 2019 - 2024. All rights reserved.