Edited at

python boto3でS3操作

More than 3 years have passed since last update.


インストール

pipか何かでboto3をインストール. 自分はcondaを使ってインストール.



$ conda install -c anaconda boto3=1.3.1

aws cliを使って、クレデンシャル情報とデフォルトの地域を登録

$ aws configure

aws_access_key_id = ACCESS_KEY_ID
aws_secret_access_key = SECRET_ACCESS_KEY
region = ap-northeast-1
output = json

なお、直接, 下記のようにファイルに追記してもok

$ vim ~/.aws/credentials

[default]
aws_access_key_id = ACCESS_KEY_ID
aws_secret_access_key = SECRET_ACCESS_KEY

$ vim ~/.aws/config:

[default]
region = ap-norteast-1
output = json


バケットリストの取得

import boto3

s3 = boto3.resource('s3')

for bucket in s3.buckets.all():
print(bucket.name)


アップロード

import boto3

s3 = boto3.resource('s3')

data = open('test.jpg', 'rb')
s3.Bucket('my-bucket').put_object(Key='test.jpg', Body=data)


下記、リファレンス

http://boto3.readthedocs.io/en/latest/index.html