存储空间(Bucket)是存储对象(Object)的容器。对象都隶属于存储空间。本文介绍如何判断存储空间是否存在。

以下代码用于判断指定的存储空间是否存在:

# -*- coding: utf-8 -*-
import oss2

# 阿里云主账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM账号进行API访问或日常运维,请登录 https://ram.console.aliyun.com 创建RAM账号。
auth = oss2.Auth('<yourAccessKeyId>', '<yourAccessKeySecret>')
# Endpoint以杭州为例,其它Region请按实际情况填写。
bucket = oss2.Bucket(auth, 'http://oss-cn-hangzhou.aliyuncs.com', '<yourBucketName>')

def does_bucket_exist(bucket):
    try:
        bucket.get_bucket_info()
    except oss2.exceptions.NoSuchBucket:
        return False
    except:
        raise
    return True

exist = does_bucket_exist(bucket)
# 返回值为true表示已存在同名bucket,false表示不存在同名bucket。
if exist:
    print('bucket exist')
else:
    print('bucket not exist')