### S3へupload
1.まず送信したい画像を用意します。SVMで使用したgeorgia.jpgを使いましょう。
2.AWSコンソールにログインし、S3からbucketを作成します。
取り敢えず、hanbai-raspi としておきます。
画像の送受信のみに利用する為、Block all public accessにします。
3.AmazonS3FullAccessのユーザを作成
4.ubuntu側でAWS SDKのboto3をインストール
$ pip -V
pip 20.1.1 from /home/vagrant/.local/lib/python3.8/site-packages/pip (python 3.8)
$ pip install boto3
1 2 3 4 5 6 7 8 9 10 11 12 13 | import boto3 accesskey = "****" secretkey = "****" region = "ap-northeast-1" s3 = boto3.client( 's3' , aws_access_key_id = accesskey, aws_secret_access_key = secretkey, region_name = region) filename = "georgia.jpg" bucket_name = "hanbai-raspi" s3.upload_file(filename,bucket_name,filename) print ( "upload {0}" . format (filename)) |
$ python app.py
upload georgia.jpg
はい、アップロードできてます。
続いて、downloadもやっちゃいましょう。
### download
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | import boto3 accesskey = "****" secretkey = "****" region = "ap-northeast-1" s3 = boto3.resource( 's3' , aws_access_key_id = accesskey, aws_secret_access_key = secretkey, region_name = region) bucket = s3.Bucket( "hanbai-raspi" ) filename = "georgia.jpg" path = "img/georgia.jpg" bucket.download_file(filename,path) print ( "upload {0}" . format (filename)) |
アップロードとダウンロードだと書き方が若干異なるので注意が必要ですね。
さあ、続いて、ubuntuとラズパイ4でcronの実行の仕方。