如何在 Google Colab 中使用 Kaggle Api 直接使用数据集?

数据挖掘 Python 显卡 卡格尔 谷歌 合作实验室
2022-03-05 22:11:13

我知道我们可以直接在 google colab 中使用 Kaggle 的 api 来下载数据集。命令是:

!mkdir .kaggle
!echo '{"username":"somename","key":"apikey"}' > /root/.kaggle/kaggle.json
!chmod 600 /root/.kaggle/kaggle.json
!kaggle competitions download -c bluebook-for-bulldozers -p /content

但是我需要做这个制作.kaggle文件的过程,并且每次都在google colab gpu中传递apikey。有时 echo 命令运行时会说没有名为 .kaggle 的文件,但说 2 分钟后没有重新启动内核,它就可以工作。听起来很有趣,但是是的,这是真的。我不能只制作一个 .kaggle 文件(仅一次)并仅使用一次这些命令并仅下载一次数据集并将其存储在某处并用于以后的目的。我使用了谷歌驱动器安装过程,但它很忙并且需要大量时间上传驱动器中的数据集。如果我需要每次只使用此命令下载数据集而不是制作 .kaggle 文件并每次都在其中写入 api 密钥和用户名,那也可以:

    !kaggle competitions download -c bluebook-for-bulldozers -p /content

以前的命令一次成功率很低,而且浪费很多时间。

1个回答

第 1 步 - 参考 Kaggle 文档以了解 API 基础知识并获取您的密钥 https://github.com/Kaggle/kaggle-api

第 2 步 - 使用这些 LoC -

    import os
    os.environ['KAGGLE_USERNAME'] = "jha01roshan" 
    os.environ['KAGGLE_KEY'] = "xxxxxxxxxxxxxxxx" 
    import kaggle

    !kaggle competitions download -c ashrae-energy-prediction

    import pandas as pd
    building_metadata = pd.read_csv("/content/building_metadata.csv")
    sample_submission = pd.read_csv("/content/sample_submission.csv.zip")