見出し画像

KaggleのdatasetをKaggle API経由でVS Codeのターミナルからダウンロードする(MacOS, Docker)

ダウンロードするKaggleコンペティションはTitanicです⛴️


私の環境

  • Mac OS

  • VS Code, Docker

手順

1. pip install kaggle

# VS Code上で新規ターミナル起動して,pip install kaggle
$ pip install kaggle

2. kaggle.jsonをvscode指定のフォルダへ移動

コンペページ 「Data」タブに書いてあるダウンロードコマンドを実行.

TitanicコンペのDataタブ
$ kaggle competitions download -c titanic
Traceback (most recent call last):
  File "/home/vscode/.local/bin/kaggle", line 5, in <module>
    from kaggle.cli import main
  File "/home/vscode/.local/lib/python3.11/site-packages/kaggle/__init__.py", line 23, in <module>
    api.authenticate()
  File "/home/vscode/.local/lib/python3.11/site-packages/kaggle/api/kaggle_api_extended.py", line 403, in authenticate
    raise IOError('Could not find {}. Make sure it\'s located in'
OSError: Could not find kaggle.json. Make sure it's located in /home/vscode/.kaggle. Or use the environment method.

「Make sure it's located in /home/vscode/.kaggle.」と怒られていますので,エラー文の指示通りに,kaggleから取得したkaggle.jsonを/home/vscode/.kaggleに移動してあげます.

# エラー文に指定された場所に移動
$ cd /home/vscode/

# エラー文に指定された場所で隠しフォルダ.kaggleを作成
$ mkdir ~/.kaggle

# jsonファイルがあるディレクトリに一旦移動して
$ cd /workspaces/opt/

# kaggle.jsonファイルを隠しフォルダ.kaggleに転送
$ mv kaggle.json /home/vscode/.kaggle/kaggle.json

3. chmod 600 /home/vscode/.kaggle/kaggle.json する

また試しにダウンロードコマンドを実行してみます.

$ kaggle competitions download -c titanic
Warning: Your Kaggle API key is readable by other users on this system! To fix this, you can run 'chmod 600 /home/vscode/.kaggle/kaggle.json'
Downloading titanic.zip to /home/vscode/.kaggle
  0%|                                                                                         | 0.00/34.1k [00:00<?, ?B/s]
100%|█████████████████████████████████████████████████████████████████████████████████| 34.1k/34.1k [00:00<00:00, 476kB/s]

「Your Kaggle API key is readable by other users on this system! To fix this, you can run 'chmod 600 /home/vscode/.kaggle/kaggle.json'」と怒られました.その通りにしていきます.

# 権限周りの変更
$ chmod 600 /home/vscode/.kaggle/kaggle.json

lsコマンドでちゃんとダウンロードされてるかを確認してみます・・・

titanic.zipが取得できてました!💪

4. zip解凍

zipの解凍コマンドも以下の通りでした.

$ unzip titanic.zip
Archive:  titanic.zip
  inflating: gender_submission.csv   
  inflating: test.csv                
  inflating: train.csv

おしまい!



参考

この記事が気に入ったらサポートをしてみませんか?