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)