このトピックでは、Object Storage Service (OSS) SDK for Pythonを使用して、バケットの作成、オブジェクトのアップロード、オブジェクトのダウンロードなどのルーチン操作を実行する方法について説明します。
ビデオチュートリアル
次のビデオは、OSS SDK for Pythonの使用方法を示しています。
バケットを作成する
バケットは OSS のグローバルネームスペースです。 バケットは、オブジェクトを格納するために使用されるコンテナです。
説明
エンドポイントの詳細については、「リージョンおよびエンドポイント」をご参照ください。 バケットの命名規則の詳細については、用語トピックのバケットセクションを参照してください。
次のサンプルコードは、バケットの作成方法の例を示しています。
# -*-コーディング: utf-8 -*-
oss2のインポート
oss2.credentialsからEnvironmentVariableCredentialsProviderをインポート
# 環境変数からアクセス資格情報を取得します。 サンプルコードを実行する前に、OSS_ACCESS_KEY_IDおよびOSS_ACCESS_KEY_SECRET環境変数が設定されていることを確認してください。
auth = oss2.ProviderAuth(EnvironmentVariableCredentialsProvider())
# バケットが配置されているリージョンのエンドポイントを指定します。 たとえば、バケットが中国 (杭州) リージョンにある場合、エンドポイントをhttps://oss-cn-hangzhou.aliyuncs.comに設定します。
# バケットの名前を指定します。
bucket = oss2.Bucket(auth, 'https:// oss-cn-hangzhou.aliyuncs.com ', 'yourBucketName')
# バケットのアクセス制御リスト (ACL) をprivateに設定します。
bucket.create_bucket(oss2.models.BUCKET_ACL_PRIVATE)
バケットの作成方法の詳細については、「バケットの作成」をご参照ください。
オブジェクトのアップロード
次のサンプルコードは、ストリーミングアップロードを使用してオブジェクトをOSSにアップロードする方法の例を示しています。
# -*-コーディング: utf-8 -*-
oss2のインポート
oss2.credentialsからEnvironmentVariableCredentialsProviderをインポート
# 環境変数からアクセス資格情報を取得します。 サンプルコードを実行する前に、OSS_ACCESS_KEY_IDおよびOSS_ACCESS_KEY_SECRET環境変数が設定されていることを確認してください。
auth = oss2.ProviderAuth(EnvironmentVariableCredentialsProvider())
# バケットが配置されているリージョンのエンドポイントを指定します。 たとえば、バケットが中国 (杭州) リージョンにある場合、エンドポイントをhttps://oss-cn-hangzhou.aliyuncs.comに設定します。
# バケットの名前を指定します。
bucket = oss2.Bucket(auth, 'https:// oss-cn-hangzhou.aliyuncs.com ', 'yourBucketName')
# オブジェクトをOSSにアップロードします。
# yourObjectNameをオブジェクトへの完全パスに置き換えます。 拡張子をフルパスに含めます。 バケット名をフルパスに含めないでください。 例: abc/efg/123.jpg.
# yourLocalFileNameをローカルファイルへのフルパスに置き換えます。 ファイル名と拡張子をフルパスに含めます。 例: /users/local/myfile.txt
bucket.put_object_from_file('yourObjectName', 'yourLocalFile ')
オブジェクトのダウンロード
次のサンプルコードは、特定のオブジェクトをコンピュータにダウンロードする方法の例を示しています。
# -*-コーディング: utf-8 -*-
oss2のインポート
oss2.credentialsからEnvironmentVariableCredentialsProviderをインポート
# 環境変数からアクセス資格情報を取得します。 サンプルコードを実行する前に、OSS_ACCESS_KEY_IDおよびOSS_ACCESS_KEY_SECRET環境変数が設定されていることを確認してください。
auth = oss2.ProviderAuth(EnvironmentVariableCredentialsProvider())
# バケットが配置されているリージョンのエンドポイントを指定します。 たとえば、バケットが中国 (杭州) リージョンにある場合、エンドポイントをhttps://oss-cn-hangzhou.aliyuncs.comに設定します。
# バケットの名前を指定します。
bucket = oss2.Bucket(auth, 'https:// oss-cn-hangzhou.aliyuncs.com ', 'yourBucketName')
# オブジェクトをコンピュータにダウンロードします。
# yourObjectNameをオブジェクトへの完全パスに置き換えます。 拡張子をフルパスに含めます。 バケット名をフルパスに含めないでください。 例: abc/efg/123.jpg.
# yourLocalFileNameをローカルファイルへのフルパスに置き換えます。 ファイル名と拡張子をフルパスに含めます。 例: /users/local/myfile.txt
bucket.get_object_to_file('yourObjectName', 'yourLocalFile ')
オブジェクトの一覧表示
次のサンプルコードは、特定のバケットに10個のオブジェクトを一覧表示する方法の例を示しています。
# -*-コーディング: utf-8 -*-
oss2のインポート
oss2.credentialsからEnvironmentVariableCredentialsProviderをインポート
itertools import isliceから
# 環境変数からアクセス資格情報を取得します。 サンプルコードを実行する前に、OSS_ACCESS_KEY_IDおよびOSS_ACCESS_KEY_SECRET環境変数が設定されていることを確認してください。
auth = oss2.ProviderAuth(EnvironmentVariableCredentialsProvider())
# バケットが配置されているリージョンのエンドポイントを指定します。 たとえば、バケットが中国 (杭州) リージョンにある場合、エンドポイントをhttps://oss-cn-hangzhou.aliyuncs.comに設定します。
# バケットの名前を指定します。
bucket = oss2.Bucket(auth, 'https:// oss-cn-hangzhou.aliyuncs.com ', 'yourBucketName')
# oss2.ObjectIteratorrはオブジェクトのトラバースに使用されます。
isliceのbの場合 (oss2.ObjectIterator(bucket) 、10):
プリント (b. キー)
オブジェクトの削除
次のサンプルコードは、オブジェクトを削除する方法の例を示しています。
# -*-コーディング: utf-8 -*-
oss2のインポート
oss2.credentialsからEnvironmentVariableCredentialsProviderをインポート
# 環境変数からアクセス資格情報を取得します。 サンプルコードを実行する前に、OSS_ACCESS_KEY_IDおよびOSS_ACCESS_KEY_SECRET環境変数が設定されていることを確認してください。
auth = oss2.ProviderAuth(EnvironmentVariableCredentialsProvider())
# バケットが配置されているリージョンのエンドポイントを指定します。 たとえば、バケットが中国 (杭州) リージョンにある場合、エンドポイントをhttps://oss-cn-hangzhou.aliyuncs.comに設定します。
# バケットの名前を指定します。
bucket = oss2.Bucket(auth, 'https:// oss-cn-hangzhou.aliyuncs.com ', 'yourBucketName')
# yourObjectNameをオブジェクトへの完全パスに置き換えます。 拡張子をフルパスに含めます。 バケット名をフルパスに含めないでください。 例: abc/efg/123.jpg.
bucket.de lete_object('yourObjectName')
オブジェクトを削除する方法の詳細については、「オブジェクトの削除」をご参照ください。