Rainbow Engine

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

IT技術 (Technology)

Kaggleのデータセットをダウンロードする方法(API)をご紹介

投稿日:2023年4月26日 更新日:

 

<目次>

(1) Kaggleのデータセットをダウンロードする方法(API)をご紹介
 (1-0) STEP0:(事前準備)Kaggleアカウント作成
 (1-1) STEP1:(事前準備)パッケージのインストール
 (1-2) STEP2:(事前準備)APIトークンの取得
 (1-3) STEP3:サンプルプログラム(データセットダウンロード)

(1) Kaggleのデータセットをダウンロードする方法(API)をご紹介

本記事ではKaggleのデータセットをPythonプログラムからAPI経由でダウンロードする手順についてご紹介します。

(1-0) STEP0:(事前準備)Kaggleアカウント作成

データセットのダウンロードにはKaggleアカウントが必要なため、持っていない方は作成します。
・①URLにアクセスしRegisterを進める
(図111①)
(図111②)
(図111③)
・②「Verify Your Account」押下
(図111④)

・「Send Verification Code」押下
(図111⑤)
・「Verify」押下
(図111⑥)
・「Close」押下
(図111⑦)

(1-1) STEP1:(事前準備)パッケージのインストール

Kaggleパッケージをインストールします。
(実行コマンド)
> pip install kaggle --user
(図121)
(結果例)

Running setup.py install for kaggle ... done
Successfully installed kaggle-1.5.12

目次にもどる

(1-2) STEP2:(事前準備)APIトークンの取得

この状態でプログラムを実行しても下記のエラーとなります。
(エラーメッセージ)
OSError: Could not find kaggle.json. Make sure it's located in C:\Users\Rainbow\.kaggle. Or use the environment method.
(図122)
これは認証に必要な情報(ユーザーID、APIキー)が適用されていないためです。
よって、下記の対応が必要。

●STEP2-1:APIトークンの発行

・①自分のアイコン→「Account」押下
(図123)

・②「Create New API Token」を押下
(図123②)

・③kaggle.jsonが生成されます。
→この中にユーザー名とキーが発行されます
{“username”:”XXXX”,”key”:”XXXXX”}
 
(図123③)

●STEP2-2:kaggle.jsonの配備

・「C:\Users\[ご自身のユーザー名]\.kaggle」に配備します。
 
(図124)
 

(1-3) STEP3:サンプルプログラム(データセットダウンロード)

(サンプルプログラム)
from kaggle.api.kaggle_api_extended import KaggleApi
import zipfile

api = KaggleApi()
api.authenticate()

output_path = './kaggle_download_dataset/'

# kaggle.com/c/dogs-vs-catsからダウンロード
# train.zip / test1.zipの2つのファイルがある
# './'はカレントディレクトリの意味。
api.competition_download_file('sentiment-analysis-on-movie-reviews',
    'train.tsv.zip', path=output_path)
api.competition_download_file('sentiment-analysis-on-movie-reviews',
    'test.tsv.zip', path=output_path)

# zipファイルの解凍
with zipfile.ZipFile(output_path+'train.tsv.zip', 'r') as zipref:
    zipref.extractall(output_path)
with zipfile.ZipFile(output_path+'test.tsv.zip', 'r') as zipref:
    zipref.extractall(output_path)
・①プログラムを実行します。
(図131)

(結果例)

Downloading train.tsv.zip to ./kaggle_download_dataset
100%|█████████████████████████████████████████████████████████████████████████████████████████| 1.28M/1.28M [00:01<00:00, 1.25MB/s]
Downloading test.tsv.zip to ./kaggle_download_dataset
100%|███████████████████████████████████████████████████████████████████████████████████████████| 494k/494k [00:00<00:00, 5.65MB/s]
・②同じ階層にzipがダウンロードされ、同時に解凍もされました。
(図132)

・③tsvファイルについて
tsvはタブを区切り文字に使ってフォーマットされたファイルです。
(図133)
Pythonのcsvモジュールを用いて読込みできます。

# tsvファイルの読込み
with open(output_path+'train.tsv', encoding='utf-8', newline='') as f:
    for cols in csv.reader(f, delimiter='\t'):
        print(cols)
 
(図134)

(1-4) エラー対処:HTTP 403エラーが出た時の対処方法について

●エラー

(エラーメッセージ)
HTTP response body: b'{"code":403,"message":"Permission \\u0027competitions.downloadData\\u0027 was denied"}'
 
(図211)

●原因

CompetionのルールをAcceptしていないため。
 
(図212)

●対策

下記のURLにアクセスし、CompetionのルールをAcceptする。
 
・URL
・「I Understand and Accept」を押下
(図213)
・完了
(図214)

Adsense審査用広告コード


Adsense審査用広告コード


-IT技術 (Technology)
-

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

Celonis Snapの使い方を画像や動画でご紹介(導入編)

  <目次> (1) Celonis Snapの使い方を画像や動画でご紹介(導入編)  (1-1) STEP1:アカウント作成(仮登録→本登録→ログイン)  (1-2) STEP2:実際にデ …

Windows10でWi-Fiが表示されない時の対処方法

  <目次> (1) Windows10でWi-Fiが表示されない時の対処方法  (1-1) 問題の整理  (1-2) 対策①:Wi-Fiサービスを有効化する  (1-3) 対策②:WLAN …

LangChainのChainやAgentとは?概要やサンプルプログラムをご紹介

  <目次> (1) LangChainのChainやAgentとは?概要やサンプルプログラムをご紹介  (1-1) やりたいこと  (1-2) Chain概要  (1-3) Chainサン …

Zoomでライセンスユーザーの追加手順など(管理オペレーション全般の手順紹介)

  <目次> (1) Zoomでライセンスユーザーの追加手順など(管理オペレーション全般の手順紹介)  (1-1) Zoomの主な管理オペレーション  (1-2) ライセンス追加(購入数の追 …

no image

Slackでボットを開発する手順をご紹介(Python)

  <目次> (1) Slackでボットを開発する手順をご紹介(Python)  (1-0) やりたいこと  (1-1) STEP1:Slackアプリの作成と疎通  (1-2) STEP2: …

  • English (United States)
  • 日本語
Top