本文介绍如何初始化Python SDK 。

Python SDK中的大部分操作都是通过oss2.Service和oss2.Bucket这两个类进行的。

  • oss2.Service类用于列举存储空间。
  • oss2.Bucket类用于上传、下载、删除文件以及对存储空间进行各种配置。

初始化这两个类时,需要指定Endpoint。其中oss2.Service类不支持自定义域名访问。有关Endpoint的更多信息,请参见访问域名和数据中心自定义访问域名

初始化oss2.Service类

详情请参管理存储空间中的列举存储空间。

初始化oss2.Bucket类

  • 使用OSS域名初始化

    以下代码用于使用OSS域名初始化:

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

    下面的代码用于使用自定义域名初始化:

    # -*- coding: utf-8 -*-
    import oss2
    
    # 阿里云主账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM账号进行API访问或日常运维,请登录 https://ram.console.aliyun.com 创建RAM账号。
    auth = oss2.Auth('<yourAccessKeyId>', '<yourAccessKeySecret>')
    
    # 自定义域名以my-domain.com为例。is_cname=True为开启CNAME。CNAME是指将自定义域名绑定到存储空间上。
    cname = 'http://my-domain.com'
    bucket = oss2.Bucket(auth, cname, '<yourBucketName>', is_cname=True)
    
  • 设置连接超时时间

    以下代码用于设置连接超时时间:

    # -*- coding: utf-8 -*-
    import oss2
    
    # 阿里云主账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM账号进行API访问或日常运维,请登录 https://ram.console.aliyun.com 创建RAM账号。
    auth = oss2.Auth('<yourAccessKeyId>', '<yourAccessKeySecret>')
    # Endpoint以杭州为例,其它Region请按实际情况填写。
    endpoint = 'http://oss-cn-hangzhou.aliyuncs.com'
    
    # 设置连接超时时间为30秒。
    bucket = oss2.Bucket(auth, endpoint, '<yourBucketName>', connect_timeout=30)
    
  • 关闭CRC数据校验

    上传、下载文件时默认开启CRC数据校验,确保上传、下载过程的数据完整性。 以下代码用于关闭CRC数据校验:

    警告 强烈建议您不要关闭CRC数据校验功能。如果您关闭此功能,则阿里云不保证上传、下载过程数据的完整性。
    # -*- coding: utf-8 -*-
    import oss2
    
    # 阿里云主账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM账号进行API访问或日常运维,请登录 https://ram.console.aliyun.com 创建RAM账号。
    auth = oss2.Auth('<yourAccessKeyId>', '<yourAccessKeySecret>')
    # Endpoint以杭州为例,其它Region请按实际情况填写。
    endpoint = 'http://oss-cn-hangzhou.aliyuncs.com'
    
    bucket = oss2.Bucket(auth, endpoint, '<yourBucketName>', enable_crc=False)