IBM Data Science Experienceを使ってぐるなびレビューデータを5万を取得する

日本語レビューデータセットをゲット

Posted by Ding on May 14, 2017

何故この記事

  1. 機械学習・テキストマイニングのための日本語のレビューデータを取得する手段は少なく、民間の人はデータを取得するのは困難である
  2. ぐるなびはAPIを公開しているが、使い勝手が悪い(一回の最大取得件数が50件)
  3. DSXを使用する情報が未だ少い

使うモノ

IBM Data Science Experience(DSX)

ぐるなびAPIとAPIキー

ぐるなびのAPIキーは申請する必要がある

実行手順

  • DSX上にプロジェクトとノートブックを作成する。

    ぐるなびのAPIのサンプルコードはPython2.xに基づいて書いてありますので、KernalもPython2にしましょう。

  • ぐるなびのサンプルコードを実装 15件しか表示しないため、使えるモノにならない。

  • APIを関数にして、リクエストパラメータを修正する。

  • 最大50件しか出力出来ないが、検索結果は全体ヒット件数とページ数があり、同じリクエストで、offsetpageを変更すれば次のページの50件を表示してくれる。これで繰り返してAPIのFunctionをリクエストする。(1000回をコールするには1時間ぐらい掛かった)
  • Responsパラメータを参照しながら抽出項目を設定する。
  • 出力したリストをCSVに保存する。
  • DSXのサーバー上出実装しているため、実際のファイルはローカルPCにない。実際にのPCダウンロードするためにもう一つの手間が掛かる。DSXのObject Storageに保存する必要がある。 具体的な操作は下記文書を参考した。Working with Object Storage in Data Science Experience - Python Edition
  • 空のCSVファイルをまずアップロードし、該当ファイルの定義を実際のノートブックにインサートする。
  • 参考文書にあるのFunctionを実装し、データをObject Storageに蓄積する。
  • 直接プロジェクト画面でData Assetsのファイルをクリックしても反応しない、そして、…のバーのところクリックしても「Remove」しかない… どんな設計だよ!色々試した結果、Data Serviceのところに移動し、やっとダウンロードできた!