【やってみよう】Alexaにものをたのむ準備-データ編
まずは空編のデータからです。
今回はここの部分です。ここにデータをいれるところ!
Lambdaの b を忘れてるのはご容赦くださいw
1.CSVデータ作成(これが一番大変)
2.AWSのデータベース(今回はDynamo)に入力(またはまる)
1.子どもに図鑑を借り、CSVファイルを作っていきます。図鑑を借りてぽちぽち入力してたら子どもが「手伝いたい、自分もやりたい!!!」と言っていたので、音声認識とかで入力手伝ってもらってもいいのかもなー。。。
一旦テスト用で入力したので、20件ほど入れました。最終的には、子どもが納得するくらいの量が欲しいところ。
2.これを、勉強のために、DynamoDbに入力してみよう・・・と思ったら画面からの入力が超めんどくさい。20件手で入れるのいやだなーと思ってPythonでサンプルプログラムを探して、Pandasで読み込んだら超読みやすくなった!ちょっとうれしい。
import pandas as pd
import boto3
csv_name = "Airplane.csv"
csv_input = pd.read_csv(filepath_or_buffer=csv_name, encoding="utf8", sep=",")
for index,item in csv_input.iterrows():
#念のため入力内容を表示
print(item['keyword'])
print(item['tag'])
print(item['detail'])
dynamodb = boto3.resource('dynamodb')
#作っておいたテーブル名を指定
table = dynamodb.Table('Airline')
table.put_item(
Item={#作っておいた項目にはめていく。
"keyword": item['keyword'],
"tag": item['tag'],
"detail": item['detail']
}
)
で、これを実行していこうと思ったら下記のエラー。
An error occurred (ResourceNotFoundException) when calling the Scan operation: Requested resource not found
一歩一歩つまづいている感ありますが、今回は意外に簡単に解決しました。下記のQiitaを参考にさせていただいて。
DynamoDBへputしたらResourceNotFoundExceptionが発生した時の対処https://qiita.com/tottu22/items/260f75de737c21664ec7
aws configure get region
us-west-2
!東京リージョンじゃないやん!!で、これってGETできるならSETできるんちゃうのと思ってコマンド打ってみたら、セットできました!
aws configure set region ap-northeast-1
aws configure get region
ap-northeast-1
やったー!Dynamoにデータが入った!
ということで下準備が!すこしづつ進んできました。
次は、入れたデータを取り出すところを作っていきます。
この記事が気に入ったらサポートをしてみませんか?