Google Cloud PlatformのAPIを使ってロボットとの会話をGoogleのSpreadSheetへ記録するプログラムを作成します。
1)APIの有効化
まずは、Google Cloud PlatformのAPIを有効化しましょう。今回のプログラムには2つのAPIを使います。下記の2点を有効化してください。
・Google Drive API
・Google Sheets API
2)Google SpreadSheetを作成する
Google SpreadSheetを作成してください。
まずは適当な名前を付けてください。今回は「RegConversation」とします。
3)作成したSpreadSheetをAPIを使ってプログラムから操作できるように共有化する
「共有」クリックし、「他のユーザーと共有」の画面を起動してください。
次にサービスキーのclient_emailのアドレスを入力してください。共有先として追加してください。サービスキーのclient_emailはjsonデータを展開すると記載されています。
先ほど作成したSpreadSheetを開き、下記の通りに項目を入力してください。Sheet名「InformationSheet」です。また、図と同じセルにLatestSheetとLatestRowを入力し、値を初期値は0としておきます。
LatestSheet:Sheet数を管理します。現在のSheetの枚数を記録していきます。(InformationSheetは枚数に含まれません)
LatestRow:行数を管理します。行数はSheetごとに管理するのではなく全てのSheetを通して行数を数えます。
4)SpreadSheetに会話データを追加するプログラムの仕様
会話のデータを追加するプログラムを作成します。プログラムの簡単な仕様としては
①InformationSheetのLatestSheetの値を確認し、数が0枚なら「data1」というSheetを追加。(Sheetの追加と同時に5列1行のセルを追加しカラム名を入力する。)
②LatestRowの値が前回のSheetの追加から1000行増えていると新たにSheetを追加して記録をする
③次に発話された内容のテキストをカラムの項目ごとに記録する(ユーザー/ロボットともに)
※Sheet名は「data2」、「data3」・・・と追加
5)ライブラリをインストール
sudo pip3 install gspread
sudo pip3 install oauth2client
6)プログラムの作成
プログラム上のS_sheetにURLに含まれているIDを入力します。URL上に表示されています。
赤線部分の「d/」から「/」の間がIDです。
合わせてGoogleサービスキーも入力します。これでプログラムが完成しました。
実行し、作成したSpreadSheetに会話の内容が記録できれば完成です。
前の投稿/次の投稿/メニューページへ戻る