web-dev-qa-db-fra.com

L'objet 'S3' n'a pas d'attribut 'Bucket'

Je reçois cette erreur l'objet 'S3' n'a pas d'attribut 'Bucket' une idée? ci-dessous est mon code

self.client = boto3.client(
        's3',
        aws_access_key_id= access_key,
        aws_secret_access_key= secret
    )
the_bucket = self.client.Bucket('my_bucket') # but I'm receiving an error here
6
MadzQuestioning

Il existe plusieurs façons d'interagir avec Boto3.

Celui de haut niveau utilisant resource() et des classes comme S3.Bucket. Et celui de bas niveau utilisant boto3.client(...). Vous êtes en train de mélanger ces deux.

Si vous regardez ici cela clarifiera la différence. En bref...

Exemple de haut niveau

s3 = boto3.resource('s3') 
the_bucket = s3.Bucket('my_bucket')

Exemple de bas niveau

self.client = boto3.client(...)
self.client.create_bucket(...)
20
Grzegorz Oledzki