Tous les produits
Search
Centre de documentation

Object Storage Service:Supprimer des buckets à l'aide du SDK OSS Python 2.0

Dernière mise à jour :Aug 18, 2026

Cette rubrique explique comment supprimer un bucket à l'aide du SDK Python 2.0.

Notes d'utilisation

  • L'exemple de code de cette rubrique utilise l'ID de région cn-hangzhou de la région Chine (Hangzhou). Par défaut, un endpoint public permet d'accéder aux ressources d'un bucket. Pour accéder aux ressources du bucket depuis d'autres services Alibaba Cloud situés dans la même région, utilisez un endpoint interne. Pour plus d'informations sur les régions et les endpoints OSS, consultez la section Régions et endpoints.

  • Les points d'accès du bucket sont supprimés. Pour plus d'informations, consultez la section Points d'accès.

  • Tous les objets du bucket sont supprimés.

    Important

    Pour supprimer un bucket versionné, assurez-vous d'avoir supprimé toutes les versions actuelles et précédentes des objets qu'il contient. Pour plus d'informations, consultez la section Versioning.

    • Si le bucket contient peu d'objets, supprimez-les manuellement. Pour plus d'informations, consultez la section Supprimer des objets.

    • Si votre bucket contient un grand nombre d'objets, configurez des règles de cycle de vie pour les supprimer. Pour plus d'informations, consultez la section Cycle de vie.

  • Les parties générées par les tâches de téléchargement en plusieurs parties ou de reprise dans le bucket sont supprimées. Pour plus d'informations, consultez la section Supprimer des parties.

Autorisations

Par défaut, un compte Alibaba Cloud dispose de toutes les autorisations. Les utilisateurs RAM ou les rôles RAM associés à un compte Alibaba Cloud ne disposent d'aucune autorisation par défaut. Le compte Alibaba Cloud ou l'administrateur du compte doit accorder les autorisations d'opération via des politiques RAM ou une Bucket Policy.

API

Action

Description

DeleteBucket

oss:DeleteBucket

Supprime un bucket.

Définition de la méthode

delete_bucket(request: DeleteBucketRequest, **kwargs) → DeleteBucketResult

Paramètres de requête

Paramètre

Type

Description

request

DeleteBucketRequest

Les paramètres de la requête. Pour plus d'informations, consultez la section DeleteBucketRequest

Paramètres de réponse

Type

Description

DeleteBucketResult

Les paramètres de la réponse. Pour plus d'informations, consultez la section DeleteBucketResult

Pour la définition complète de la méthode delete_bucket, consultez la section delete_bucket.

Exemple de code

Voici un exemple de code pour supprimer un bucket :

import argparse
import alibabacloud_oss_v2 as oss

# Create a command-line argument parser and describe that this script is used to delete a specified OSS bucket.
parser = argparse.ArgumentParser(description="Delete a specified OSS bucket.")

# Add the --region command-line argument, which specifies the region where the bucket is located. This argument is required.
parser.add_argument('--region', help='The region in which the bucket is located.', required=True)

# Add the --bucket command-line argument, which specifies the name of the bucket. This argument is required.
parser.add_argument('--bucket', help='The name of the bucket to delete.', required=True)

# Add the --endpoint command-line argument, which specifies the domain name that other services can use to access OSS. This argument is not required.
parser.add_argument('--endpoint', help='The domain names that other services can use to access OSS.')

def main():
    """
    The main function, which is used to parse command-line arguments and delete the specified bucket.
    """

    args = parser.parse_args()  # Parse command-line arguments.

    # Load credentials from environment variables for identity verification.
    credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()

    # Use the default configurations of the SDK and set the credential provider and region.
    cfg = oss.config.load_default()
    cfg.credentials_provider = credentials_provider
    cfg.region = args.region

    # If the endpoint parameter is provided, set the endpoint in the configuration.
    if args.endpoint is not None:
        cfg.endpoint = args.endpoint

    # Create an OSS client based on the configurations.
    client = oss.Client(cfg)

    # Construct a request to delete the specified bucket.
    request = oss.DeleteBucketRequest(bucket=args.bucket)
   
    try:
        # Send the request and obtain the response.
        result = client.delete_bucket(request)

        # Print the status code and request ID of the response.
        print(f'status code: {result.status_code},'
              f' request id: {result.request_id}')
    except oss.exceptions.OssError as e:
        # Catch and print possible exceptions.
        print(f"Failed to delete bucket: {e}")

if __name__ == "__main__":
    main()  # The script entry point. The main function is called when the file is run.
  

Référence