tottu22 エンジニアブログ

tottu22’s blog

エンジニアの日常をつづっていきます

AWS S3にpythonからファイルアップロードを早朝からやりたくなって

はやく起きた朝は

朝4時に目が覚めまして、昨日は土曜日で子供のサッカーの試合があって、ほとんどエンジニア的な活動ができなく、何かやらなきゃなと

 

モヤモヤしていたら、朝4時に目が覚めてしまったので、

 

よし今から1時間くらいでパッとできることやってみようと思い、Qiitaの記事を書きました。

やった内容は、pepper が見た画像を何かのクラウドストレージにタグづけしてアップロードしとくと、何か役に立つだろうと(本当に使えるかどうかは別として、、そもそも顔認証は特徴だけが管理されているというのがプライバシーを気にしなくてよいというメリットがあるのですが、変な学習されてもゴミとなるので、あとで消せるというメリットもあるはず)

f:id:tottu22:20171203084619j:plain

 

さっそくやってみるが、準備不足でエラー

自分のMacbookPythonでboto3を使ってアップロードをしてみると、、

あれ?credentialのエラーが起きる。。

家の端末では、これまでAWSへの操作をやっていなかったらしくawscliすらインストールされてませんでした。

 

おお、まさかここから設定しなきゃいけないとは、

 

でも1時間くらいで終わるでしょ

 

ということで、

pip install awscli からはじまり、credentialを設定して、boto3を使ってファイルアップロードまでをQiitaに簡単にまとめときました。

 

qiita.com

 

Credentialは面倒

aws のcredentialって、AWSコンソールからだとAccess Tokenしか見えなくて、secret keyが初回しか見えなくなって、初回見逃してダウンロードし忘れたら、また払い出すという仕様がどうも好きになれません。

まあ、基本credentialの共有はしないものみたいだし、定期的に変えるのが理想みたいなので、その仕様が一番セキュリティ的には良いと思うのですが、

いろんな端末からawsコマンドを使ったりするので、前のやつを消して新しいのを払い出すと前のがもう使えなくなって、再度設定しなおしって面倒ですよね。

 

まあ、でも不正利用されたら困りますので、我慢します。

IAMをもっとうまく使いこなせるようになりたいです。

 

あとはpepperにいれるだけ

pepperはpepperで面倒で、pepperでpythonライブラリをいれるのは、ライブラリのフォルダーをアップロードしなきゃいけないこと。watsonもconversationをwatson-cloud-developerを使うために、ライブラリをアップロードしました。

boto3 もいれなきゃですね。