ContainerClient クラス

特定のコンテナーと対話するクライアント。ただし、そのコンテナーはまだ存在しない可能性があります。

このコンテナー内の特定の BLOB に関連する操作の場合は、 関数を使用して BLOB クライアントを get_blob_client 取得できます。

その他のオプション構成については、 こちらをクリックしてください。

継承
azure.storage.blob._shared.base_client.StorageAccountHostsMixin
ContainerClient
azure.storage.blob._encryption.StorageEncryptionMixin
ContainerClient

コンストラクター

ContainerClient(account_url: str, container_name: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any)

パラメーター

account_url
str
必須

ストレージ アカウントへの URI。 コンテナーへの完全な URI を指定してクライアントを作成するには、 classmethod を使用します from_container_url

container_name
str
必須

BLOB のコンテナーの名前。

credential
既定値: None

認証に使用する資格情報。 アカウント URL に SAS トークンが既に含まれている場合、これは省略可能です。 値には、SAS トークン文字列、azure.core.credentials の AzureSasCredential または AzureNamedKeyCredential のインスタンス、アカウント共有アクセス キー、または azure.identity の TokenCredentials クラスのインスタンスを指定できます。 リソース URI に SAS トークンが既に含まれている場合、明示的な資格情報を優先して無視されます

  • 競合する SAS トークンによって ValueError が発生する AzureSasCredential の場合を除きます。 AzureNamedKeyCredential のインスタンスを使用する場合は、"name" をストレージ アカウント名に、"key" をストレージ アカウント キーにする必要があります。
api_version
str

要求に使用するストレージ API バージョン。 既定値は、現在の SDK と互換性のある最新のサービス バージョンです。 古いバージョンに設定すると、機能の互換性が低下する可能性があります。

バージョン 12.2.0 の新機能。

secondary_hostname
str

セカンダリ エンドポイントのホスト名。

max_block_size
int

ブロック BLOB をチャンク単位でアップロードするための最大チャンク サイズ。 既定値は 4*1024*1024 または 4 MB です。

max_single_put_size
int

BLOB サイズが max_single_put_size 以下の場合、BLOB は http PUT 要求を 1 つだけ使用してアップロードされます。 BLOB サイズが max_single_put_size より大きい場合、BLOB はチャンクでアップロードされます。 既定値は 64*1024*1024 または 64 MB です。

min_large_block_upload_threshold
int

ブロック BLOB をアップロードするときにメモリ効率の高いアルゴリズムを使用するために必要な最小チャンク サイズ。 既定値は 4*1024*1024+1 です。

use_byte_buffer
bool

ブロック BLOB のアップロードにはバイト バッファーを使用します。 既定値は False です。

max_page_size
int

ページ BLOB をアップロードするための最大チャンク サイズ。 既定値は 4*1024*1024 または 4 MB です。

max_single_get_size
int

1 回の呼び出しでダウンロードされる BLOB の最大サイズ。超過した部分はチャンクでダウンロードされます (並列である可能性があります)。 既定値は 32*1024*1024 または 32 MB です。

max_chunk_get_size
int

BLOB のダウンロードに使用される最大チャンク サイズ。 既定値は 4*1024*1024 または 4 MB です。

メソッド

acquire_lease

新しいリースを要求します。 コンテナーにアクティブなリースがない場合、BLOB Service はそのコンテナーのリースを作成し、新しいリース ID を返します。

close

このメソッドは、クライアントによって開かれたソケットを閉じる方法です。 コンテキスト マネージャーで を使用する場合は使用する必要はありません。

create_container

指定したアカウントの下に新しいコンテナーを作成します。 同じ名前のコンテナーが既に存在する場合、操作は失敗します。

delete_blob

指定した BLOB またはスナップショットを削除対象としてマークします。

BLOB は、後でガベージ コレクション中に削除されます。 BLOB を削除するには、そのスナップショットをすべて削除する必要があります。 delete_blob操作を使用して、両方を同時に削除できます。

サービスに対して削除アイテム保持ポリシーが有効になっている場合、この操作は、BLOB またはスナップショットを論理的に削除し、指定した日数にわたって BLOB またはスナップショットを保持します。 指定した日数が経過すると、ガベージ コレクション中に BLOB のデータがサービスから削除されます。 論理的に削除された BLOB またはスナップショットには、include=["deleted"] オプションを指定することでlist_blobsアクセスできます。 論理的に削除された BLOB またはスナップショットは、 を使用して復元できます<xref:azure.storage.blob.BlobClient.undelete>

delete_blobs

指定した BLOB またはスナップショットを削除対象としてマークします。

BLOB は後でガベージ コレクション中に削除されます。 BLOB を削除するには、すべてのスナップショットを削除する必要があることに注意してください。 delete_blobs操作では、両方を同時に削除できます。

サービスに対して削除アイテム保持ポリシーが有効になっている場合、この操作は論理的に BLOB またはスナップショットを削除し、指定した日数にわたって BLOB またはスナップショットを保持します。 指定した日数が経過すると、ガベージ コレクション中に BLOB のデータがサービスから削除されます。 論理的に削除された BLOB またはスナップショットには、include=["deleted"] を指定することでlist_blobsアクセスできます。論理的に削除された BLOB またはスナップショットは、 を使用して復元できます<xref:azure.storage.blob.BlobClient.undelete>

1 つの要求で削除できる BLOB の最大数は 256 です。

delete_container

指定したコンテナーに削除のマークを付けます。 コンテナーとその中に含まれている BLOB は、後でガベージ コレクション中に削除されます。

download_blob

BLOB を StorageStreamDownloader にダウンロードします。 readall() メソッドを使用してすべてのコンテンツを読み取るか、readinto() を使用して BLOB をストリームにダウンロードする必要があります。 chunks() を使用すると、ユーザーがコンテンツをチャンク単位で反復処理できる反復子が返されます。

exists

コンテナーが存在する場合は True を返し、それ以外の場合は False を返します。

find_blobs_by_tags

指定した検索式に一致するタグを持つ、指定されたコンテナーの下の BLOB を一覧表示するジェネレーターを返します。 ジェネレーターは、サービスによって返された継続トークンに遅れて従います。

from_connection_string

接続文字列から ContainerClient を作成します。

from_container_url

コンテナー URL から ContainerClient を作成します。

get_account_information

ストレージ アカウントに関連する情報を取得します。

ユーザーがコンテナーまたは BLOB への SAS を持っている場合も、情報を取得できます。 返されるディクショナリのキーには、'sku_name' と 'account_kind' が含まれます。

get_blob_client

指定した BLOB と対話するクライアントを取得します。

BLOB がまだ存在している必要はありません。

get_container_access_policy

指定したコンテナーのアクセス許可を取得します。 アクセス許可は、コンテナー データがパブリックにアクセス可能かどうかを示します。

get_container_properties

指定したコンテナーのすべてのユーザー定義メタデータとシステム プロパティを返します。 返されるデータにコンテナーの BLOB 一覧は含まれません。

list_blob_names

指定したコンテナーの下にある BLOB の名前を一覧表示するジェネレーターを返します。 ジェネレーターは、サービスによって返された継続トークンに遅れて従います。

この API を使用する場合、追加のプロパティやメタデータは返されません。 さらに、この API には、スナップショット、バージョン、論理的に削除された BLOB などの追加の BLOB を含めるオプションはありません。このデータのいずれかを取得するには、 を使用します list_blobs

list_blobs

指定したコンテナーの下にある BLOB を一覧表示するジェネレーターを返します。 ジェネレーターは、サービスによって返された継続トークンに遅れて従います。

set_container_access_policy

Shared Access Signature で使用できる、指定されたコンテナーまたは格納されているアクセス ポリシーのアクセス許可を設定します。 アクセス許可は、コンテナー内の BLOB がパブリックにアクセス可能かどうかを示します。

set_container_metadata

指定したコンテナーに対して 1 つ以上のユーザー定義の名前と値のペアを設定します。 この操作を呼び出すと、その都度、コンテナーに関連付けられている既存のメタデータがすべて置き換えられます。 コンテナーからすべてのメタデータを削除するには、メタデータ ディクテーションなしでこの操作を呼び出します。

set_premium_page_blob_tier_blobs

すべての BLOB のページ BLOB 層を設定します。 この API は、Premium アカウントのページ BLOB でのみサポートされます。

1 つの要求で更新できる BLOB の最大数は 256 です。

set_standard_blob_tier_blobs

この操作により、ブロック BLOB の層が設定されます。

ブロック BLOB の層によって、ホット/クール/アーカイブ ストレージの種類が決まります。 この操作では、BLOB の ETag は更新されません。

1 つの要求で更新できる BLOB の最大数は 256 です。

upload_blob

自動チャンクを使用して、データ ソースから新しい BLOB を作成します。

walk_blobs

指定したコンテナーの下にある BLOB を一覧表示するジェネレーターを返します。 ジェネレーターは、サービスによって返された継続トークンに遅れて従います。 この操作では、指定した区切り文字で区切られた階層に従って BLOB が一覧表示されます。

acquire_lease

新しいリースを要求します。 コンテナーにアクティブなリースがない場合、BLOB Service はそのコンテナーのリースを作成し、新しいリース ID を返します。

acquire_lease(lease_duration: int = -1, lease_id: str | None = None, **kwargs) -> BlobLeaseClient

パラメーター

lease_duration
int
必須

リース期間 (秒単位) を指定します。無期限のリースには -1 を指定します。 無限リースでない場合は、15 ~ 60 秒を指定できます。 更新または変更を使用してリース期間を変更することはできません。 既定値は -1 (無限リース) です。

lease_id
str
必須

GUID 文字列形式の推奨リース ID。 提案されたリース ID が正しい形式でない場合、BLOB サービスは 400 (無効な要求) を返します。

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

etag
str

ETag 値またはワイルドカード文字 (*)。 リソースが変更されたかどうかをチェックし、match_condition パラメーターで指定された条件に従って動作するために使用されます。

match_condition
MatchConditions

etag で使用する一致条件。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください

戻り値

コンテキスト マネージャーで実行できる BlobLeaseClient オブジェクト。

の戻り値の型 :

close

このメソッドは、クライアントによって開かれたソケットを閉じる方法です。 コンテキスト マネージャーで を使用する場合は使用する必要はありません。

close()

create_container

指定したアカウントの下に新しいコンテナーを作成します。 同じ名前のコンテナーが既に存在する場合、操作は失敗します。

create_container(metadata: Dict[str, str] | None = None, public_access: PublicAccess | str | None = None, **kwargs: Any) -> Dict[str, str | datetime]

パラメーター

metadata
dict[str, str]
必須

メタデータとしてコンテナーに関連付けるname_valueペアを持つディクテーション。 例:{'Category':'test'}

public_access
PublicAccess
必須

使用できる値は、'container'、'blob' です。

container_encryption_scope
dict または ContainerEncryptionScope

コンテナーに設定し、今後のすべての書き込みに使用する既定の暗号化スコープを指定します。

バージョン 12.2.0 の新機能。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください

戻り値

応答ヘッダーのディクショナリ。

の戻り値の型 :

delete_blob

指定した BLOB またはスナップショットを削除対象としてマークします。

BLOB は、後でガベージ コレクション中に削除されます。 BLOB を削除するには、そのスナップショットをすべて削除する必要があります。 delete_blob操作を使用して、両方を同時に削除できます。

サービスに対して削除アイテム保持ポリシーが有効になっている場合、この操作は、BLOB またはスナップショットを論理的に削除し、指定した日数にわたって BLOB またはスナップショットを保持します。 指定した日数が経過すると、ガベージ コレクション中に BLOB のデータがサービスから削除されます。 論理的に削除された BLOB またはスナップショットには、include=["deleted"] オプションを指定することでlist_blobsアクセスできます。 論理的に削除された BLOB またはスナップショットは、 を使用して復元できます<xref:azure.storage.blob.BlobClient.undelete>

delete_blob(blob: str | BlobProperties, delete_snapshots: str | None = None, **kwargs) -> None

パラメーター

blob
str または BlobProperties
必須

対話する BLOB。 指定した場合、この値は BLOB URL で指定された BLOB 値をオーバーライドします。

delete_snapshots
str
必須

BLOB にスナップショットが関連付けられている場合は必須です。 次の値が含まれます。

  • "only": BLOB スナップショットのみを削除します。

  • "include": すべてのスナップショットと共に BLOB を削除します。

version_id
str

version id パラメーターは不透明な DateTime 値であり、存在する場合は、削除する BLOB のバージョンを指定します。

バージョン 12.4.0 の新機能。

このキーワード (keyword)引数は、API バージョン '2019-12-12' で導入されました。

lease
BlobLeaseClient または str

BLOB にアクティブなリースが存在する場合は必須です。 値には、BlobLeaseClient オブジェクト、または文字列としてのリース ID を指定できます。

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

etag
str

ETag 値またはワイルドカード文字 (*)。 リソースが変更されたかどうかをチェックし、match_condition パラメーターで指定された条件に従って動作するために使用されます。

match_condition
MatchConditions

etag で使用する一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください。

の戻り値の型 :

delete_blobs

指定した BLOB またはスナップショットを削除対象としてマークします。

BLOB は後でガベージ コレクション中に削除されます。 BLOB を削除するには、すべてのスナップショットを削除する必要があることに注意してください。 delete_blobs操作では、両方を同時に削除できます。

サービスに対して削除アイテム保持ポリシーが有効になっている場合、この操作は論理的に BLOB またはスナップショットを削除し、指定した日数にわたって BLOB またはスナップショットを保持します。 指定した日数が経過すると、ガベージ コレクション中に BLOB のデータがサービスから削除されます。 論理的に削除された BLOB またはスナップショットには、include=["deleted"] を指定することでlist_blobsアクセスできます。論理的に削除された BLOB またはスナップショットは、 を使用して復元できます<xref:azure.storage.blob.BlobClient.undelete>

1 つの要求で削除できる BLOB の最大数は 256 です。

delete_blobs(*blobs: str | Dict[str, Any] | BlobProperties, **kwargs: Any) -> Iterator[HttpResponse]

パラメーター

blobs
str または dict(str, Any) または BlobProperties
必須

削除する BLOB。 これは 1 つの BLOB にすることも、複数の値を指定することもできます。各値は BLOB (str) または BlobProperties の名前です。

注意

BLOB の種類が dict の場合は、キーと値の規則の一覧を次に示します。

BLOB 名:

key: 'name', value type: str

削除するスナップショット:

key: 'スナップショット', 値型: str

バージョン ID:

key: 'version_id', 値型: str

BLOB を削除するときにスナップショットを削除するかどうか:

key: 'delete_snapshots', value: 'include' または 'only'

BLOB が変更された場合は、次の手順を実行します。

key: 'if_modified_since'、'if_unmodified_since'、値の種類: datetime

Etag:

key: 'etag', value type: str

etag と一致するかどうか:

key: 'match_condition', 値の種類: MatchConditions

tags match condition:

key: 'if_tags_match_condition', 値型: str

リース:

key: 'lease_id', value type: Union[str, LeaseClient]

サブ要求のタイムアウト:

key: 'timeout', value type: int

delete_snapshots
str

BLOB にスナップショットが関連付けられている場合は必須。 次の値が含まれます。

  • "only": BLOB スナップショットのみを削除します。

  • "include": すべてのスナップショットと共に BLOB を削除します。

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

raise_on_any_failure
bool

これはブール値パラメーターであり、既定値は True です。 この設定を行うと、1 つの操作エラーが発生した場合でも例外が発生します。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください。

戻り値

応答の反復子。BLOB ごとに順番に 1 つ

の戻り値の型 :

delete_container

指定したコンテナーに削除のマークを付けます。 コンテナーとその中に含まれている BLOB は、後でガベージ コレクション中に削除されます。

delete_container(**kwargs: Any) -> None

パラメーター

lease
BlobLeaseClient または str

指定した場合、delete_containerはコンテナーのリースがアクティブで、この ID と一致する場合にのみ成功します。 コンテナーにアクティブなリースがある場合は必須です。

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

etag
str

ETag 値またはワイルドカード文字 (*)。 リソースが変更されたかどうかをチェックし、match_condition パラメーターで指定された条件に従って動作するために使用されます。

match_condition
MatchConditions

etag で使用する一致条件。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください。

の戻り値の型 :

download_blob

BLOB を StorageStreamDownloader にダウンロードします。 readall() メソッドを使用してすべてのコンテンツを読み取るか、readinto() を使用して BLOB をストリームにダウンロードする必要があります。 chunks() を使用すると、ユーザーがコンテンツをチャンク単位で反復処理できる反復子が返されます。

download_blob(blob: str | BlobProperties, offset: int = None, length: int = None, *, encoding: str, **kwargs) -> StorageStreamDownloader[str]

パラメーター

blob
str または BlobProperties
必須

対話する BLOB。 指定した場合、この値は BLOB URL で指定された BLOB 値をオーバーライドします。

offset
int
必須

BLOB のセクションのダウンロードに使用するバイト範囲の先頭。 length が指定されている場合は、 を設定する必要があります。

length
int
必須

ストリームから読み取るバイト数。 これは省略可能ですが、最適なパフォーマンスを得るには指定する必要があります。

version_id
str

version id パラメーターは不透明な DateTime 値であり、存在する場合は、ダウンロードする BLOB のバージョンを指定します。

バージョン 12.4.0 の新機能。

このキーワード (keyword)引数は、API バージョン '2019-12-12' で導入されました。

validate_content
bool

true の場合、BLOB の各チャンクの MD5 ハッシュが計算されます。 ストレージ サービスは、送信されたハッシュで到着したコンテンツのハッシュをチェックします。 これは主に、https (既定値) が既に検証されるため、https ではなく http を使用する場合に、ネットワーク上のビットフラグを検出する場合に重要です。 この MD5 ハッシュは BLOB と共に保存されません。 また、MD5 ハッシュを計算するにはブロック全体をバッファリングする必要があり、これによりメモリ効率の高いアルゴリズムの目的が無効になるため、有効にすると、メモリ効率の高いアップロード アルゴリズムは使用されないことに注意してください。

lease
BlobLeaseClient または str

BLOB にアクティブなリースが存在する場合は必須です。 指定した場合、download_blobは BLOB のリースがアクティブであり、この ID と一致する場合にのみ成功します。 値には、BlobLeaseClient オブジェクト、または文字列としてのリース ID を指定できます。

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

etag
str

ETag 値またはワイルドカード文字 (*)。 リソースが変更されたかどうかをチェックし、match_condition パラメーターで指定された条件に従って動作するために使用されます。

match_condition
MatchConditions

etag で使用する一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

cpk
CustomerProvidedEncryptionKey

指定されたキーを使用して、サービス側のデータを暗号化します。 お客様から提供されたキーの使用は、HTTPS 経由で行う必要があります。 暗号化キー自体が要求で提供されるため、キーを転送するにはセキュリティで保護された接続を確立する必要があります。

max_concurrency
int

ダウンロードする並列接続の数。

encoding
str

ダウンロードしたバイトをデコードするエンコード。 既定値は None です。つまり、デコードは行われません。

progress_hook
Callable[[int, int], None]

実行時間の長いダウンロードの進行状況を追跡するコールバック。 シグネチャは function(current: int, total: int) です。current はこれまでに転送されたバイト数で、total はダウンロードの合計サイズです。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください。 このメソッドは、サービスに対して複数の呼び出しを行う場合があり、タイムアウトは各呼び出しに個別に適用されます。 Azure サービスへの複数の呼び出しとタイムアウトは、各呼び出しに個別に適用されます。

戻り値

ストリーミング オブジェクト (StorageStreamDownloader)

の戻り値の型 :

exists

コンテナーが存在する場合は True を返し、それ以外の場合は False を返します。

exists(**kwargs: Any) -> bool

パラメーター

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください。

戻り値

boolean

の戻り値の型 :

find_blobs_by_tags

指定した検索式に一致するタグを持つ、指定されたコンテナーの下の BLOB を一覧表示するジェネレーターを返します。 ジェネレーターは、サービスによって返された継続トークンに遅れて従います。

find_blobs_by_tags(filter_expression: str, **kwargs: Any | None) -> ItemPaged[FilteredBlob]

パラメーター

filter_expression
str
必須

指定した条件に一致するタグを持つ BLOB を検索する式。 例: ""yourtagname"='firsttag' と "yourtagname2"='secondtag'"

results_per_page
int

ページ分割時のページあたりの最大結果。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください。

戻り値

FilteredBlob の iterable (自動ページング) 応答。

の戻り値の型 :

from_connection_string

接続文字列から ContainerClient を作成します。

from_connection_string(conn_str: str, container_name: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any) -> Self

パラメーター

conn_str
str
必須

Azure Storage アカウントへの接続文字列。

container_name
str
必須

BLOB のコンテナー名。

credential
既定値: None

認証に使用する資格情報。 これは、アカウント URL に SAS トークンが既に含まれている場合、または接続文字列に既に共有アクセス キーの値がある場合は省略可能です。 値には、SAS トークン文字列、azure.core.credentials の AzureSasCredential または AzureNamedKeyCredential のインスタンス、アカウント共有アクセス キー、または azure.identity からの TokenCredentials クラスのインスタンスを指定できます。 ここで指定した資格情報は、接続文字列内の資格情報よりも優先されます。 AzureNamedKeyCredential のインスタンスを使用する場合は、"name" をストレージ アカウント名に、"key" をストレージ アカウント キーにする必要があります。

戻り値

コンテナー クライアント。

の戻り値の型 :

from_container_url

コンテナー URL から ContainerClient を作成します。

from_container_url(container_url: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any) -> Self

パラメーター

container_url
str
必須

使用されている場合は SAS トークンを含む、コンテナーへの完全なエンドポイント URL。 これは、現在の location_modeに応じて、プライマリ エンドポイントまたはセカンダリ エンドポイントのいずれかになります。

credential
既定値: None

認証に使用する資格情報。 これは、アカウント URL に SAS トークンが既に含まれている場合、または接続文字列に既に共有アクセス キーの値がある場合は省略可能です。 値には、SAS トークン文字列、azure.core.credentials の AzureSasCredential または AzureNamedKeyCredential のインスタンス、アカウント共有アクセス キー、または azure.identity からの TokenCredentials クラスのインスタンスを指定できます。 リソース URI に SAS トークンが既に含まれている場合、明示的な資格情報を優先して無視されます

  • ただし、競合する SAS トークンによって ValueError が発生する AzureSasCredential の場合を除きます。 AzureNamedKeyCredential のインスタンスを使用する場合は、"name" をストレージ アカウント名に、"key" をストレージ アカウント キーにする必要があります。

戻り値

コンテナー クライアント。

の戻り値の型 :

get_account_information

ストレージ アカウントに関連する情報を取得します。

ユーザーがコンテナーまたは BLOB への SAS を持っている場合も、情報を取得できます。 返されるディクショナリのキーには、'sku_name' と 'account_kind' が含まれます。

get_account_information(**kwargs: Any) -> Dict[str, str]

戻り値

アカウント情報 (SKU とアカウントの種類) のディクテーション。

の戻り値の型 :

get_blob_client

指定した BLOB と対話するクライアントを取得します。

BLOB がまだ存在している必要はありません。

get_blob_client(blob: str | BlobProperties, snapshot: str = None, *, version_id: str | None = None) -> BlobClient

パラメーター

blob
str または BlobProperties
必須

対話する BLOB。

snapshot
str
既定値: None

操作対象の省略可能な BLOB スナップショット。 これは、スナップショット ID 文字列、または からcreate_snapshot返される応答です。

version_id
str

version id パラメーターは不透明な DateTime 値であり、存在する場合は、操作する BLOB のバージョンを指定します。

戻り値

BlobClient。

の戻り値の型 :

get_container_access_policy

指定したコンテナーのアクセス許可を取得します。 アクセス許可は、コンテナー データがパブリックにアクセス可能かどうかを示します。

get_container_access_policy(**kwargs: Any) -> Dict[str, Any]

パラメーター

lease
BlobLeaseClient または str

指定した場合、get_container_access_policyはコンテナーのリースがアクティブであり、この ID と一致する場合にのみ成功します。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください。

戻り値

dict 内のポリシー情報にアクセスします。

の戻り値の型 :

get_container_properties

指定したコンテナーのすべてのユーザー定義メタデータとシステム プロパティを返します。 返されるデータにコンテナーの BLOB 一覧は含まれません。

get_container_properties(**kwargs: Any) -> ContainerProperties

パラメーター

lease
BlobLeaseClient または str

指定した場合、get_container_propertiesはコンテナーのリースがアクティブであり、この ID と一致する場合にのみ成功します。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください。

戻り値

コンテナー オブジェクト内の指定されたコンテナーのプロパティ。

の戻り値の型 :

list_blob_names

指定したコンテナーの下にある BLOB の名前を一覧表示するジェネレーターを返します。 ジェネレーターは、サービスによって返された継続トークンに遅れて従います。

この API を使用する場合、追加のプロパティやメタデータは返されません。 さらに、この API には、スナップショット、バージョン、論理的に削除された BLOB などの追加の BLOB を含めるオプションはありません。このデータのいずれかを取得するには、 を使用します list_blobs

list_blob_names(**kwargs: Any) -> ItemPaged[str]

パラメーター

name_starts_with
str

結果をフィルター処理し、名前が指定されたプレフィックスで始まる BLOB のみを返します。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください。

戻り値

文字列としての BLOB 名の iterable (自動ページング) 応答。

の戻り値の型 :

list_blobs

指定したコンテナーの下にある BLOB を一覧表示するジェネレーターを返します。 ジェネレーターは、サービスによって返された継続トークンに遅れて従います。

list_blobs(name_starts_with: str | None = None, include: str | List[str] | None = None, **kwargs: Any) -> ItemPaged[BlobProperties]

パラメーター

name_starts_with
str
必須

結果をフィルター処理し、名前が指定されたプレフィックスで始まる BLOB のみを返します。

include
list[str] または str
必須

応答に含める 1 つ以上の追加データセットを指定します。 オプションには、'snapshots'、'metadata'、'uncommittedblobs'、'copy'、'deleted'、'deletedwithversions'、'tags'、'versions'、'immutabilitypolicy'、'legalhold' があります。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください。

戻り値

BlobProperties の iterable (自動ページング) 応答。

の戻り値の型 :

set_container_access_policy

Shared Access Signature で使用できる、指定されたコンテナーまたは格納されているアクセス ポリシーのアクセス許可を設定します。 アクセス許可は、コンテナー内の BLOB がパブリックにアクセス可能かどうかを示します。

set_container_access_policy(signed_identifiers: Dict[str, AccessPolicy], public_access: str | PublicAccess | None = None, **kwargs) -> Dict[str, str | datetime]

パラメーター

signed_identifiers
dict[str, AccessPolicy]
必須

コンテナーに関連付けるアクセス ポリシーのディクショナリ。 ディクショナリには、最大 5 つの要素を含めることができます。 空のディクショナリを使用すると、サービスに設定されているアクセス ポリシーがクリアされます。

public_access
PublicAccess
必須

使用可能な値は、'container'、'blob' です。

lease
BlobLeaseClient または str

コンテナーにアクティブなリースがある場合は必須です。 値には、BlobLeaseClient オブジェクト、または文字列としてのリース ID を指定できます。

if_modified_since
datetime

datetime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 指定した日付/時刻以降にリソースが変更された場合にのみ、このヘッダーを指定して操作を実行します。

if_unmodified_since
datetime

datetime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください。

戻り値

コンテナー更新プロパティの dict (Etag と最終更新日)。

の戻り値の型 :

set_container_metadata

指定したコンテナーに対して 1 つ以上のユーザー定義の名前と値のペアを設定します。 この操作を呼び出すと、その都度、コンテナーに関連付けられている既存のメタデータがすべて置き換えられます。 コンテナーからすべてのメタデータを削除するには、メタデータ ディクテーションなしでこの操作を呼び出します。

set_container_metadata(metadata: Dict[str, str] | None = None, **kwargs) -> Dict[str, str | datetime]

パラメーター

metadata
dict[str, str]
必須

メタデータとしてコンテナーに関連付ける名前と値のペアを含む dict。 例: {'category':'test'}

lease
BlobLeaseClient または str

指定した場合、set_container_metadataはコンテナーのリースがアクティブで、この ID と一致する場合にのみ成功します。

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

etag
str

ETag 値またはワイルドカード文字 (*)。 リソースが変更されたかどうかをチェックし、match_condition パラメーターで指定された条件に従って動作するために使用されます。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください。

戻り値

コンテナー更新プロパティの dict (Etag と最終更新日)。

の戻り値の型 :

set_premium_page_blob_tier_blobs

すべての BLOB のページ BLOB 層を設定します。 この API は、Premium アカウントのページ BLOB でのみサポートされます。

1 つの要求で更新できる BLOB の最大数は 256 です。

set_premium_page_blob_tier_blobs(premium_page_blob_tier: str | PremiumPageBlobTier | None, *blobs: str | Dict[str, Any] | BlobProperties, **kwargs: Any) -> Iterator[HttpResponse]

パラメーター

premium_page_blob_tier
PremiumPageBlobTier
必須

BLOB を設定するページ BLOB 層の値。 層は、BLOB のサイズと許可される IOPS の数に関連付けられる。 これは、Premium Storage アカウントのページ BLOB にのみ適用されます。

注意

異なる BLOB で異なる層を設定する場合は、この位置指定パラメーターを None に設定してください。

その後、すべての BlobProperties の BLOB 層が取得されます。

blobs
str または dict(str, Any) または BlobProperties
必須

対話する BLOB。 これは 1 つの BLOB にすることも、複数の値を指定することもできます。各値は BLOB (str) または BlobProperties の名前です。

注意

BLOB の種類が dict の場合は、キーと値の規則の一覧を次に示します。

BLOB 名:

key: 'name', value type: str

Premium BLOB 層:

key: 'blob_tier', 値の種類: PremiumPageBlobTier

リース:

key: 'lease_id', value type: Union[str, LeaseClient]

サブ要求のタイムアウト:

key: 'timeout', value type: int

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください。

raise_on_any_failure
bool

これはブール値パラメーターであり、既定値は True です。 この設定を行うと、1 つの操作エラーが発生した場合でも例外が発生します。

戻り値

応答の反復子。BLOB ごとに順番に 1 つ

の戻り値の型 :

<xref:iterator>[HttpResponse]

set_standard_blob_tier_blobs

この操作により、ブロック BLOB の層が設定されます。

ブロック BLOB の層によって、ホット/クール/アーカイブ ストレージの種類が決まります。 この操作では、BLOB の ETag は更新されません。

1 つの要求で更新できる BLOB の最大数は 256 です。

set_standard_blob_tier_blobs(standard_blob_tier: str | StandardBlobTier | None, *blobs: str | Dict[str, Any] | BlobProperties, **kwargs: Any) -> Iterator[HttpResponse]

パラメーター

standard_blob_tier
str または StandardBlobTier
必須

すべての BLOB に設定する層を示します。 オプションには、'Hot'、'Cool'、'Archive' があります。 ホット層は、頻繁にアクセスされるデータを格納するために最適化されています。 クール ストレージ層は、アクセス頻度が低く、少なくとも 1 か月間格納されるデータを格納するために最適化されています。 アーカイブ層は、アクセスされることはほとんどなく、少なくとも 6 か月間保存されるデータを格納するために最適化されており、柔軟な待機時間の要件があります。

注意

異なる BLOB で異なる層を設定する場合は、この位置指定パラメーターを None に設定してください。

その後、すべての BlobProperties の BLOB 層が取得されます。

blobs
str または dict(str, Any) または BlobProperties
必須

対話する BLOB。 これは 1 つの BLOB にすることも、複数の値を指定することもできます。各値は BLOB (str) または BlobProperties の名前です。

注意

BLOB の種類が dict の場合は、キーと値の規則の一覧を次に示します。

BLOB 名:

key: 'name', value type: str

Standard BLOB 層:

key: 'blob_tier', 値型: StandardBlobTier

リハイドレート優先度:

key: 'rehydrate_priority', 値の種類: RehydratePriority

リース:

key: 'lease_id', value type: Union[str, LeaseClient]

スナップショット:

key: "スナップショット", 値型: str

バージョン ID:

key: "version_id", 値型: str

tags match condition:

key: 'if_tags_match_condition', 値型: str

サブ要求のタイムアウト:

key: 'timeout', value type: int

rehydrate_priority
RehydratePriority

アーカイブされた BLOB のリハイドレートに使用する優先度を示します

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください。

raise_on_any_failure
bool

これはブール値パラメーターであり、既定値は True です。 この設定を行うと、1 つの操作エラーが発生した場合でも例外が発生します。

戻り値

応答の反復子。BLOB ごとに順番に 1 つ

の戻り値の型 :

upload_blob

自動チャンクを使用して、データ ソースから新しい BLOB を作成します。

upload_blob(name: str | BlobProperties, data: bytes | str | Iterable | IO, blob_type: str | BlobType = BlobType.BLOCKBLOB, length: int | None = None, metadata: Dict[str, str] | None = None, **kwargs) -> BlobClient

パラメーター

name
str または BlobProperties
必須

対話する BLOB。 指定した場合、この値は BLOB URL で指定された BLOB 値をオーバーライドします。

data
必須

アップロードする BLOB データ。

blob_type
BlobType
必須

BLOB の種類。 これには、BlockBlob、PageBlob、AppendBlob のいずれかを指定できます。 既定値は BlockBlob です。

length
int
必須

ストリームから読み取るバイト数。 これは省略可能ですが、最適なパフォーマンスを得るには指定する必要があります。

metadata
dict(str, str)
必須

BLOB にメタデータとして関連付ける名前と値のペア。

overwrite
bool

アップロードする BLOB が現在のデータを上書きするかどうか。 True の場合、upload_blobは既存のデータを上書きします。 False に設定すると、ResourceExistsError で操作が失敗します。 上記の例外は、追加 BLOB の種類です。False に設定されていて、データが既に存在する場合、エラーは発生せず、データは既存の BLOB に追加されます。 overwrite=True を設定すると、既存の追加 BLOB が削除され、新しい BLOB が作成されます。 既定値は False です。

content_settings
ContentSettings

BLOB プロパティの設定に使用される ContentSettings オブジェクト。 コンテンツ タイプ、エンコード、言語、処理、md5、およびキャッシュ制御を設定するために使用されます。

validate_content
bool

true の場合、BLOB の各チャンクの MD5 ハッシュが計算されます。 ストレージ サービスは、送信されたハッシュで到着したコンテンツのハッシュをチェックします。 これは主に、https (既定値) が既に検証されるため、https ではなく http を使用する場合に、ネットワーク上のビットフラグを検出する場合に重要です。 この MD5 ハッシュは BLOB と共に保存されません。 また、MD5 ハッシュを計算するにはブロック全体をバッファリングする必要があり、これによりメモリ効率の高いアルゴリズムの目的が無効になるため、有効にすると、メモリ効率の高いアップロード アルゴリズムは使用されないことに注意してください。

lease
BlobLeaseClient または str

コンテナーにアクティブなリースがある場合は必須です。 値には、BlobLeaseClient オブジェクト、または文字列としてのリース ID を指定できます。

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

etag
str

ETag 値またはワイルドカード文字 (*)。 リソースが変更されたかどうかをチェックし、match_condition パラメーターで指定された条件に従って動作するために使用されます。

match_condition
MatchConditions

etag で使用する一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください。 このメソッドは、サービスに対して複数の呼び出しを行う場合があり、タイムアウトは各呼び出しに個別に適用されます。

premium_page_blob_tier
PremiumPageBlobTier

BLOB を設定するページ BLOB 層の値。 層は、BLOB のサイズと許可される IOPS の数に関連付けられる。 これは、Premium Storage アカウントのページ BLOB にのみ適用されます。

standard_blob_tier
StandardBlobTier

BLOB を設定する標準 BLOB 層の値。 このバージョンのライブラリでは、これは Standard ストレージ アカウントのブロック BLOB にのみ適用されます。

maxsize_condition
int

オプションの条件付きヘッダー。 追加 BLOB に許可される最大長 (バイト単位)。 ブロックの追加操作によって BLOB がこの制限を超える場合、または BLOB サイズがこのヘッダーで指定された値を既に超えている場合、要求は MaxBlobSizeConditionNotMet エラー (HTTP 状態コード 412 - 前提条件失敗) で失敗します。

max_concurrency
int

BLOB サイズが 64 MB を超える場合に使用する並列接続の最大数。

cpk
CustomerProvidedEncryptionKey

指定されたキーを使用して、サービス側のデータを暗号化します。 お客様から提供されたキーの使用は、HTTPS 経由で行う必要があります。 暗号化キー自体が要求で提供されるため、キーを転送するにはセキュリティで保護された接続を確立する必要があります。

encryption_scope
str

サービス上のデータを暗号化するために使用される定義済みの暗号化スコープ。 暗号化スコープは、Management API を使用して作成し、ここで名前で参照できます。 コンテナーで既定の暗号化スコープが定義されている場合、コンテナー レベルのスコープがオーバーライドを許可するように構成されている場合、この値によってオーバーライドされます。 そうしないと、エラーが発生します。

バージョン 12.2.0 の新機能。

encoding
str

既定値は UTF-8 です。

progress_hook
Callable[[int, Optional[int]], None]

実行時間の長いアップロードの進行状況を追跡するためのコールバック。 シグネチャは function(current: int, total: Optional[int]) です。current はこれまでに転送されたバイト数で、total は BLOB のサイズ、サイズが不明な場合は None です。

戻り値

新しくアップロードされた BLOB と対話する BlobClient。

の戻り値の型 :

walk_blobs

指定したコンテナーの下にある BLOB を一覧表示するジェネレーターを返します。 ジェネレーターは、サービスによって返された継続トークンに遅れて従います。 この操作では、指定した区切り文字で区切られた階層に従って BLOB が一覧表示されます。

walk_blobs(name_starts_with: str | None = None, include: str | List[str] | None = None, delimiter: str = '/', **kwargs: Any | None) -> ItemPaged[BlobProperties]

パラメーター

name_starts_with
str
必須

結果をフィルター処理し、名前が指定されたプレフィックスで始まる BLOB のみを返します。

include
list[str] または str
必須

応答に含める 1 つ以上の追加データセットを指定します。 オプションには、'snapshots'、'metadata'、'uncommittedblobs'、'copy'、'deleted'、'deletedwithversions'、'tags'、'versions'、'immutabilitypolicy'、'legalhold' があります。

delimiter
str
必須

要求にこのパラメーターが含まれている場合、操作は応答本文で BlobPrefix 要素を返します。この要素は、名前が区切り文字の外観まで同じ部分文字列で始まるすべての BLOB のプレースホルダーとして機能します。 区切り記号には単一文字または文字列を使用できます。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください。

戻り値

BlobProperties の iterable (自動ページング) 応答。

の戻り値の型 :

属性

api_version

要求に使用される Storage API のバージョン。

location_mode

クライアントが現在使用している場所モード。

既定では、これは "プライマリ" になります。 オプションには、"primary" と "secondary" が含まれます。

primary_endpoint

完全なプライマリ エンドポイント URL。

primary_hostname

プライマリ エンドポイントのホスト名。

secondary_endpoint

完全なセカンダリ エンドポイント URL (構成されている場合)。

使用できない場合は、ValueError が発生します。 セカンダリ ホスト名を明示的に指定するには、インスタンス化時に省略可能な secondary_hostname キーワード (keyword) 引数を使用します。

例外

secondary_hostname

セカンダリ エンドポイントのホスト名。

使用できない場合、これは None になります。 セカンダリ ホスト名を明示的に指定するには、インスタンス化時に省略可能な secondary_hostname キーワード (keyword) 引数を使用します。

url

SAS トークン (使用されている場合) を含む、このエンティティへの完全なエンドポイント URL。

これは、現在 location_modeの に応じて、プライマリ エンドポイントまたはセカンダリ エンドポイントのいずれかになります。 :returns: SAS トークン (使用されている場合) を含む、このエンティティへの完全なエンドポイント URL。 :rtype: str