Todos os produtos
Search
Central de documentação

Object Storage Service:Excluir buckets usando o OSS SDK Python 2.0

Última atualização: Sep 22, 2026

Este tópico descreve como excluir um bucket usando o Python SDK 2.0.

Notas de uso

  • O código de exemplo neste tópico utiliza o ID de região cn-hangzhou da região China (Hangzhou). Por padrão, um endpoint público é usado para acessar recursos em um bucket. Para acessar recursos no bucket a partir de outros serviços Alibaba Cloud na mesma região do bucket, use um endpoint interno. Para mais informações sobre regiões e endpoints do OSS, consulte Regions and endpoints.

  • Os pontos de acesso do bucket estão excluídos. Para mais informações, consulte Access points.

  • Todos os objetos no bucket estão excluídos.

    Importante

    Para excluir um bucket com versionamento, certifique-se de que todas as versões atuais e anteriores dos objetos no bucket foram excluídas. Para mais informações, consulte Versioning.

    • Se o bucket contém poucos objetos, exclua-os manualmente. Para mais informações, consulte Delete objects.

    • Caso o bucket contenha um grande número de objetos, configure regras de ciclo de vida para excluí-los. Saiba mais em Ciclo de vida.

  • As partes geradas por tarefas de upload multipart ou upload resumível no bucket estão excluídas. Para mais informações, consulte Delete parts.

Permissões

Por padrão, uma conta Alibaba Cloud possui permissões completas. Usuários RAM ou funções RAM vinculados a uma conta Alibaba Cloud não possuem nenhuma permissão por padrão. A conta Alibaba Cloud ou o administrador da conta deve conceder as permissões de operação por meio de RAM policies ou Bucket Policy.

API

Action

Descrição

DeleteBucket

oss:DeleteBucket

Exclui um bucket.

Definição do método

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

Parâmetros de solicitação

Parâmetro

Tipo

Descrição

request

DeleteBucketRequest

Os parâmetros de solicitação. Para mais informações, consulte DeleteBucketRequest.

Parâmetros de resposta

Tipo

Descrição

DeleteBucketResult

Os parâmetros de resposta. Para mais informações, consulte DeleteBucketResult.

Para a definição completa do método delete_bucket, consulte delete_bucket.

Código de exemplo

Veja a seguir um exemplo de código para excluir um 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.
  

Referência