从 Kaggle 下载文件到 Google Colab

Sta*_*ian 6 ubuntu wget download kaggle google-colaboratory

我想将手语数据集从Kaggle下载到我的 Colab。

到目前为止,我一直使用 wget 和特定的 zip 文件链接,例如:

!wget --no-check-certificate \
    https://storage.googleapis.com/laurencemoroney-blog.appspot.com/rps.zip \
    -O /tmp/rps.zip
Run Code Online (Sandbox Code Playgroud)

但是,当我右键单击 Kaggle 上的下载按钮并选择复制链接以将路径复制到剪贴板并输出时,我得到:

https://www.kaggle.com/datamunge/sign-language-mnist/download

当我在浏览器中使用此链接时,系统要求我下载它。我可以看到文件名是 3258_5337_bundle_archive.zip

所以我试过:

!wget --no-check-certificate \
        https://www.kaggle.com/datamunge/sign-language-mnist/download3258_5337_bundle_archive.zip  \
        -O /tmp/kds.zip
Run Code Online (Sandbox Code Playgroud)

并尝试过:

 !wget --no-check-certificate \
            https://www.kaggle.com/datamunge/sign-language-mnist/download3258_5337_bundle_archive.zip  \
            -O /tmp/kds.zip
Run Code Online (Sandbox Code Playgroud)

我得到作为输出:

前

所以它不起作用。找不到文件或返回的 zip 存档不是 101mb 大,而只有几 kb。此外,当尝试解压缩它时,它不起作用。

如何将此文件下载到我的 colab(直接使用 wget?)?

rch*_*urt 9

Kaggle 建议使用他们自己的 API 而不是 wget 或 rsync。

首先,为 Kaggle 制作一个 API 令牌。在 Kaggle 的网站上,转到“我的帐户”,滚动到 API 部分并单击“创建新的 API 令牌” - 它会在您的机器上下载 kaggle.json 文件。

然后在 Google Colab 中运行以下命令:

from google.colab import files
files.upload() # Browse for the kaggle.json file that you downloaded

# Make directory named kaggle, copy kaggle.json file there, and change the permissions of the file.
! mkdir ~/.kaggle
! cp kaggle.json ~/.kaggle/
! chmod 600 ~/.kaggle/kaggle.json

# You can check if everything's okay by running this command.
! kaggle datasets list

# Download and unzip sign-language-mnist dataset into '/usr/local'
! kaggle datasets download -d datamunge/sign-language-mnist --path '/usr/local' --unzip
Run Code Online (Sandbox Code Playgroud)

从这里使用的信息:https : //www.kaggle.com/general/74235