0
ファイルをダウンロードすることはできません。また、boto3
と表示されているのバケットの一覧を取得することはできません。パブリックS3バケットからboto3のファイルをダウンロードする
次のコードは、公開1と自分自身のバケツで動作しますが、ない:
def s3_list(bucket, s3path_or_prefix):
bsession = boto3.Session(aws_access_key_id=settings.AWS['ACCESS_KEY'],
aws_secret_access_key=settings.AWS['SECRET_ACCESS_KEY'],
region_name=settings.AWS['REGION_NAME'])
s3 = bsession.resource('s3')
my_bucket = s3.Bucket(bucket)
items = my_bucket.objects.filter(Prefix=s3path_or_prefix)
return [ii.key for ii in items]
私はこのコードでAccessDenied
エラーを取得します。バケツは自分ではなく、そこにパーミッションを設定することはできませんが、私はそれが一般の読者に公開されていると確信しています。
公共何バケットあなたがこれまでに試してみましたか? – baldr
質問のコードスニペットは正しい資格で私にとってはうまくいきますが、明示的に 'boto3.Session'オブジェクトを作成するのではなく、' s3 = boto3.resource( 's3') 'を直接使うこともできます。 –
私は 's3:// nasanex/MODIS'バケットを使用しようとしました –