ContainerClient Sınıf

Belirli bir kapsayıcıyla etkileşime geçmek için bir istemci, ancak bu kapsayıcı henüz mevcut olmayabilir.

Bu kapsayıcıdaki belirli bir blobla ilgili işlemler için blob istemcisi işlevi kullanılarak get_blob_client alınabilir.

Daha fazla isteğe bağlı yapılandırma için lütfen buraya tıklayın.

Devralma
azure.storage.blob._shared.base_client.StorageAccountHostsMixin
ContainerClient
azure.storage.blob._encryption.StorageEncryptionMixin
ContainerClient

Oluşturucu

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

Parametreler

account_url
str
Gerekli

Depolama hesabına ilişkin URI. Kapsayıcıya tam URI verilen bir istemci oluşturmak için classmethod kullanın from_container_url .

container_name
str
Gerekli

Blob için kapsayıcının adı.

credential
varsayılan değer: None

Kimlik doğrulaması için kullanılan kimlik bilgileri. Hesap URL'sinde zaten bir SAS belirteci varsa bu isteğe bağlıdır. Değer bir SAS belirteci dizesi, azure.core.credentials öğesinden azureSasCredential veya AzureNamedKeyCredential örneği, hesap paylaşılan erişim anahtarı veya azure.identity'den TokenCredentials sınıfının bir örneği olabilir. Kaynak URI'sinde zaten bir SAS belirteci varsa, bu açık bir kimlik bilgisi için yoksayılır

  • ancak çakışan SAS belirteçlerinin bir ValueError oluşturacağı AzureSasCredential durumu dışında. AzureNamedKeyCredential örneği kullanılıyorsa depolama hesabı adı "name" ve depolama hesabı anahtarı "anahtar" olmalıdır.
api_version
str

İstekler için kullanılacak Depolama API'sinin sürümü. Varsayılan değer, geçerli SDK ile uyumlu en son hizmet sürümüdür. Eski bir sürüme ayar yapmak özellik uyumluluğunu azaltabilir.

Sürüm 12.2.0'da yeni.

secondary_hostname
str

İkincil uç noktanın ana bilgisayar adı.

max_block_size
int

Blok blobunu öbeklere yüklemek için en büyük öbek boyutu. Varsayılan olarak 4*1024*1024 veya 4 MB'tır.

max_single_put_size
int

Blob boyutu max_single_put_size küçük veya eşitse, blob yalnızca bir http PUT isteğiyle karşıya yüklenir. Blob boyutu max_single_put_size'den büyükse blob öbekler halinde karşıya yüklenir. Varsayılan olarak 64*1024*1024 veya 64 MB'tır.

min_large_block_upload_threshold
int

Blok blobunu karşıya yüklerken bellek açısından verimli algoritmayı kullanmak için gereken en düşük öbek boyutu. Varsayılan değer: 4*1024*1024+1.

use_byte_buffer
bool

Blok blobu karşıya yüklemeleri için bayt arabelleği kullanın. Varsayılan değer False'tur.

max_page_size
int

Sayfa blobunu karşıya yüklemek için en büyük öbek boyutu. Varsayılan olarak 4*1024*1024 veya 4 MB'tır.

max_single_get_size
int

Tek bir çağrıda indirilecek blob için boyut üst sınırı; aşılan bölüm öbekler halinde indirilir (paralel olabilir). Varsayılan olarak 32*1024*1024 veya 32 MB'tır.

max_chunk_get_size
int

Blob indirmek için kullanılan en büyük öbek boyutu. Varsayılan olarak 4*1024*1024 veya 4 MB'tır.

Yöntemler

acquire_lease

Yeni bir kira isteğinde bulunur. Kapsayıcının etkin bir kirası yoksa, Blob hizmeti kapsayıcıda bir kira oluşturur ve yeni bir kira kimliği döndürür.

close

Bu yöntem, istemci tarafından açılan yuvaları kapatmaktır. Bağlam yöneticisi ile kullanılırken kullanılması gerekmez.

create_container

Belirtilen hesap altında yeni bir kapsayıcı oluşturur. Aynı ada sahip kapsayıcı zaten varsa, işlem başarısız olur.

delete_blob

Belirtilen blobu veya anlık görüntüyü silinmek üzere işaretler.

Blob daha sonra çöp toplama sırasında silinir. Bir blobu silmek için tüm anlık görüntülerini silmeniz gerektiğini unutmayın. delete_blob işlemiyle ikisini de aynı anda silebilirsiniz.

Hizmet için silme bekletme ilkesi etkinleştirildiyse, bu işlem blobu veya anlık görüntüyü geçici olarak siler ve blobu veya anlık görüntüyü belirtilen gün sayısı boyunca korur. Belirtilen gün sayısından sonra, blobun verileri çöp toplama sırasında hizmetten kaldırılır. Geçici olarak silinen blob veya anlık görüntüye include=["deleted"] seçeneği belirterek list_blobs erişilebilir. Geçici olarak silinen blob veya anlık görüntü kullanılarak geri yüklenebilir <xref:azure.storage.blob.BlobClient.undelete>

delete_blobs

Belirtilen blobları veya anlık görüntüleri silinmek üzere işaretler.

Bloblar daha sonra çöp toplama sırasında silinir. Blobları silmek için tüm anlık görüntülerini silmeniz gerektiğini unutmayın. delete_blobs işlemiyle ikisini de aynı anda silebilirsiniz.

Hizmet için silme bekletme ilkesi etkinleştirildiyse, bu işlem blobları veya anlık görüntüleri geçici olarak siler ve blobları veya anlık görüntüleri belirtilen gün sayısı boyunca saklar. Belirtilen gün sayısından sonra, blobların verileri çöp toplama sırasında hizmetten kaldırılır. Geçici olarak silinen bloblara veya anlık görüntülere include=["deleted" belirterek list_blobs erişilebilir. Geçici olarak silinen bloblar veya anlık görüntüler kullanılarak geri yüklenebilir<xref:azure.storage.blob.BlobClient.undelete>

Tek bir istekte silinebilecek blob sayısı üst sınırı 256'dır.

delete_container

Belirtilen kapsayıcıyı silinmek üzere işaretler. Kapsayıcı ve içindeki tüm bloblar daha sonra çöp toplama sırasında silinir.

download_blob

StorageStreamDownloader'a bir blob indirir. Readall() yöntemi tüm içeriği okumak için kullanılmalıdır veya blobu bir akışa indirmek için readinto() kullanılmalıdır. chunks() kullanmak, kullanıcının öbekler içindeki içeriği yinelemesine olanak tanıyan bir yineleyici döndürür.

exists

Bir kapsayıcı varsa True döndürür ve aksi takdirde False döndürür.

find_blobs_by_tags

Belirtilen kapsayıcının altındaki etiketleri verilen arama ifadesiyle eşleşen blobları listelemek için bir oluşturucu döndürür. Oluşturucu, hizmet tarafından döndürülen devamlılık belirteçlerini yavaş bir şekilde izler.

from_connection_string

Bağlantı Dizesinden ContainerClient oluşturun.

from_container_url

Kapsayıcı URL'sinden ContainerClient oluşturun.

get_account_information

Depolama hesabıyla ilgili bilgileri alır.

Bilgiler, kullanıcının bir kapsayıcı veya blob için SAS'sine sahip olması durumunda da alınabilir. Döndürülen sözlükteki anahtarlar 'sku_name' ve 'account_kind' içerir.

get_blob_client

Belirtilen blobla etkileşime geçmek için bir istemci alın.

Blob zaten mevcut değil.

get_container_access_policy

Belirtilen kapsayıcının izinlerini alır. İzinler, kapsayıcı verilerine genel olarak erişilip erişilemeyeceğini gösterir.

get_container_properties

Belirtilen kapsayıcı için kullanıcı tanımlı tüm meta verileri ve sistem özelliklerini döndürür. Döndürülen veriler kapsayıcının blob listesini içermez.

list_blob_names

Belirtilen kapsayıcının altındaki blobların adlarını listelemek için bir oluşturucu döndürür. Oluşturucu, hizmet tarafından döndürülen devamlılık belirteçlerini gevşek bir şekilde izler.

Bu API kullanılırken hiçbir ek özellik veya meta veri döndürülmeyecektir. Buna ek olarak, bu API'nin anlık görüntüler, sürümler, geçici olarak silinen bloblar vb. gibi ek bloblar ekleme seçeneği yoktur. Bu verilerden herhangi birini almak için kullanın list_blobs.

list_blobs

Belirtilen kapsayıcının altındaki blobları listelemek için bir oluşturucu döndürür. Oluşturucu, hizmet tarafından döndürülen devamlılık belirteçlerini gevşek bir şekilde izler.

set_container_access_policy

Paylaşılan Erişim İmzaları ile kullanılabilecek belirtilen kapsayıcı veya depolanmış erişim ilkeleri için izinleri ayarlar. İzinler, bir kapsayıcıdaki bloblara genel olarak erişilip erişilemeyeceğini gösterir.

set_container_metadata

Belirtilen kapsayıcı için bir veya daha fazla kullanıcı tanımlı ad-değer çifti ayarlar. Bu işleme yapılan her çağrı, kapsayıcıya eklenmiş olan tüm meta verilerin yerini alır. Kapsayıcıdan tüm meta verileri kaldırmak için, meta veri diktesi olmadan bu işlemi çağırın.

set_premium_page_blob_tier_blobs

Tüm bloblarda sayfa blobu katmanlarını ayarlar. Bu API yalnızca premium hesaplardaki sayfa blobları için desteklenir.

Tek bir istekte güncelleştirilebilecek blob sayısı üst sınırı 256'dır.

set_standard_blob_tier_blobs

Bu işlem blok bloblarında katmanı ayarlar.

Blok blobu katmanı Sık Erişimli/Seyrek Erişimli/Arşiv depolama türünü belirler. Bu işlem blob'un ETag'ini güncelleştirmez.

Tek bir istekte güncelleştirilebilecek blob sayısı üst sınırı 256'dır.

upload_blob

Otomatik öbekleme ile veri kaynağından yeni bir blob oluşturur.

walk_blobs

Belirtilen kapsayıcının altındaki blobları listelemek için bir oluşturucu döndürür. Oluşturucu, hizmet tarafından döndürülen devamlılık belirteçlerini gevşek bir şekilde izler. Bu işlem blobları belirtilen sınırlayıcı karakteriyle sınırlandırılmış şekilde bir hiyerarşiye uygun olarak listeler.

acquire_lease

Yeni bir kira isteğinde bulunur. Kapsayıcının etkin bir kirası yoksa, Blob hizmeti kapsayıcıda bir kira oluşturur ve yeni bir kira kimliği döndürür.

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

Parametreler

lease_duration
int
Gerekli

Süresi hiç dolmamış bir kiralama için kiranın süresini saniye cinsinden veya negatif bir (-1) olarak belirtir. Sonsuz olmayan kiralama 15 ile 60 saniye arasında olabilir. Kiralama süresi yenileme veya değişiklik kullanılarak değiştirilemez. Varsayılan değer -1 'dir (sonsuz kiralama).

lease_id
str
Gerekli

GUID dizesi biçiminde önerilen kira kimliği. Önerilen kira kimliği doğru biçimde değilse Blob hizmeti 400 (Geçersiz istek) döndürür.

if_modified_since
datetime

Bir DateTime değeri. Azure, geçirilen tarih değerinin UTC olmasını bekler. Saat dilimi dahil edilirse, UTC olmayan tarih saatleri UTC'ye dönüştürülür. Saat dilimi bilgisi olmadan bir tarih geçirilirse UTC olduğu varsayılır. İşlemi yalnızca kaynak belirtilen süreden sonra değiştirilmişse gerçekleştirmek için bu üst bilgiyi belirtin.

if_unmodified_since
datetime

Bir DateTime değeri. Azure, geçirilen tarih değerinin UTC olmasını bekler. Saat dilimi dahil edilirse, UTC olmayan tarih saatleri UTC'ye dönüştürülür. Saat dilimi bilgisi olmadan bir tarih geçirilirse UTC olduğu varsayılır. İşlemi yalnızca kaynak belirtilen tarih/saatten sonra değiştirilmemişse gerçekleştirmek için bu üst bilgiyi belirtin.

etag
str

ETag değeri veya joker karakter (*). Kaynağın değişip değişmediğini denetlemek ve match_condition parametresi tarafından belirtilen koşula göre hareket etmek için kullanılır.

match_condition
MatchConditions

Etag üzerinde kullanılacak eşleştirme koşulu.

timeout
int

İşlemin sunucu tarafı zaman aşımını saniye olarak ayarlar. Diğer ayrıntılar için bkz: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Bu değer istemcide izlenmiyor veya doğrulanmıyor. İstemci tarafı ağ zaman aşımlarını yapılandırmak için buraya bakın.

Döndürülenler

Bağlam yöneticisinde çalıştırılabilir bir BlobLeaseClient nesnesi.

Dönüş türü

close

Bu yöntem, istemci tarafından açılan yuvaları kapatmaktır. Bağlam yöneticisi ile kullanılırken kullanılması gerekmez.

close()

create_container

Belirtilen hesap altında yeni bir kapsayıcı oluşturur. Aynı ada sahip kapsayıcı zaten varsa, işlem başarısız olur.

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

Parametreler

metadata
dict[str, str]
Gerekli

Kapsayıcıyla meta veri olarak ilişkilendirilecek name_value çiftlerine sahip bir dikte. Örnek:{'Category':'test'}

public_access
PublicAccess
Gerekli

Olası değerler şunlardır: 'kapsayıcı', 'blob'.

container_encryption_scope
dict veya ContainerEncryptionScope

Kapsayıcıda ayarlanıp gelecekteki tüm yazma işlemleri için kullanılacak varsayılan şifreleme kapsamını belirtir.

Sürüm 12.2.0'da yeni.

timeout
int

İşlemin sunucu tarafı zaman aşımını saniye olarak ayarlar. Diğer ayrıntılar için bkz: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Bu değer istemcide izlenmiyor veya doğrulanmıyor. İstemci tarafı ağ zaman aşımlarını yapılandırmak için buraya bakın.

Döndürülenler

Yanıt üst bilgilerinin sözlüğü.

Dönüş türü

delete_blob

Belirtilen blobu veya anlık görüntüyü silinmek üzere işaretler.

Blob daha sonra çöp toplama sırasında silinir. Bir blobu silmek için tüm anlık görüntülerini silmeniz gerektiğini unutmayın. delete_blob işlemiyle ikisini de aynı anda silebilirsiniz.

Hizmet için silme bekletme ilkesi etkinleştirildiyse, bu işlem blobu veya anlık görüntüyü geçici olarak siler ve blobu veya anlık görüntüyü belirtilen gün sayısı boyunca korur. Belirtilen gün sayısından sonra, blobun verileri çöp toplama sırasında hizmetten kaldırılır. Geçici olarak silinen blob veya anlık görüntüye include=["deleted"] seçeneği belirterek list_blobs erişilebilir. Geçici olarak silinen blob veya anlık görüntü kullanılarak geri yüklenebilir <xref:azure.storage.blob.BlobClient.undelete>

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

Parametreler

blob
str veya BlobProperties
Gerekli

Etkileşim kuracak blob. Belirtilirse, bu değer blob URL'sinde belirtilen blob değerini geçersiz kılar.

delete_snapshots
str
Gerekli

Blobda ilişkili anlık görüntüler varsa gereklidir. Değerlere şunlar dahildir:

  • "only": Yalnızca blob anlık görüntülerini siler.

  • "include": Blobu tüm anlık görüntülerle birlikte siler.

version_id
str

sürüm kimliği parametresi, mevcut olduğunda silinecek blobun sürümünü belirten opak bir DateTime değeridir.

Sürüm 12.4.0'da yeni.

Bu anahtar sözcük bağımsız değişkeni '2019-12-12' API sürümünde sunulmuştur.

lease
BlobLeaseClient veya str

Blob etkin bir kiraya sahipse gereklidir. Değer bir BlobLeaseClient nesnesi veya dize olarak kira kimliği olabilir.

if_modified_since
datetime

Bir DateTime değeri. Azure, geçirilen tarih değerinin UTC olmasını bekler. Saat dilimi dahil edilirse, UTC olmayan tarih saatleri UTC'ye dönüştürülür. Saat dilimi bilgisi olmadan bir tarih geçirilirse UTC olduğu varsayılır. İşlemi yalnızca kaynak belirtilen süreden sonra değiştirilmişse gerçekleştirmek için bu üst bilgiyi belirtin.

if_unmodified_since
datetime

Bir DateTime değeri. Azure, geçirilen tarih değerinin UTC olmasını bekler. Saat dilimi dahil edilirse, UTC olmayan tarih saatleri UTC'ye dönüştürülür. Saat dilimi bilgisi olmadan bir tarih geçirilirse UTC olduğu varsayılır. İşlemi yalnızca kaynak belirtilen tarih/saatten sonra değiştirilmemişse gerçekleştirmek için bu üst bilgiyi belirtin.

etag
str

ETag değeri veya joker karakter (*). Kaynağın değişip değişmediğini denetlemek ve match_condition parametresi tarafından belirtilen koşula göre hareket etmek için kullanılır.

match_condition
MatchConditions

Etag üzerinde kullanılacak eşleştirme koşulu.

if_tags_match_condition
str

Blob etiketleri üzerinde yalnızca eşleşen değere sahip blob üzerinde çalışacak bir SQL where yan tümcesi belirtin. Örneğin "\"tagname\"='my tag'"

Sürüm 12.4.0'da yeni.

timeout
int

İşlemin sunucu tarafı zaman aşımını saniye olarak ayarlar. Diğer ayrıntılar için bkz: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Bu değer istemcide izlenmiyor veya doğrulanmıyor. İstemci tarafı ağ zaman aşımlarını yapılandırmak için buraya bakın.

Dönüş türü

delete_blobs

Belirtilen blobları veya anlık görüntüleri silinmek üzere işaretler.

Bloblar daha sonra çöp toplama sırasında silinir. Blobları silmek için tüm anlık görüntülerini silmeniz gerektiğini unutmayın. delete_blobs işlemiyle ikisini de aynı anda silebilirsiniz.

Hizmet için silme bekletme ilkesi etkinleştirildiyse, bu işlem blobları veya anlık görüntüleri geçici olarak siler ve blobları veya anlık görüntüleri belirtilen gün sayısı boyunca saklar. Belirtilen gün sayısından sonra, blobların verileri çöp toplama sırasında hizmetten kaldırılır. Geçici olarak silinen bloblara veya anlık görüntülere include=["deleted" belirterek list_blobs erişilebilir. Geçici olarak silinen bloblar veya anlık görüntüler kullanılarak geri yüklenebilir<xref:azure.storage.blob.BlobClient.undelete>

Tek bir istekte silinebilecek blob sayısı üst sınırı 256'dır.

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

Parametreler

blobs
str veya dict(str, Any) veya BlobProperties
Gerekli

Silinecek bloblar. Bu tek bir blob olabilir veya her değerin blobun adı (str) veya BlobProperties olduğu birden çok değer sağlanabilir.

Not

Blob türü dikte olduğunda anahtarların listesi, değer kuralları aşağıdadır.

blob adı:

key: 'name', value type: str

silmek istediğiniz anlık görüntü:

key: 'snapshot', değer türü: str

sürüm kimliği:

key: 'version_id', değer türü: str

blob silinirken anlık görüntülerin silinip silinmeyeceği:

key: 'delete_snapshots', value: 'include' veya 'only'

blob değiştirildiyse veya değiştirilmediyse:

key: 'if_modified_since', 'if_unmodified_since', değer türü: datetime

Etag:

key: 'etag', değer türü: str

etag ile eşleş veya eşleşme:

key: 'match_condition', değer türü: MatchConditions

etiketler eşleşme koşulu:

key: 'if_tags_match_condition', değer türü: str

Kira:

key: 'lease_id', değer türü: Union[str, LeaseClient]

alt sorgu için zaman aşımı:

key: 'timeout', değer türü: int

delete_snapshots
str

Bir blobda ilişkili anlık görüntüler varsa gereklidir. Değerlere şunlar dahildir:

  • "only": Yalnızca blob anlık görüntülerini siler.

  • "include": Blobu tüm anlık görüntülerle birlikte siler.

if_modified_since
datetime

Bir DateTime değeri. Azure, geçirilen tarih değerinin UTC olmasını bekler. Saat dilimi dahil edilirse, UTC olmayan tarih saatleri UTC'ye dönüştürülür. Saat dilimi bilgisi olmadan bir tarih geçirilirse UTC olduğu varsayılır. İşlemi yalnızca kaynak belirtilen süreden sonra değiştirilmişse gerçekleştirmek için bu üst bilgiyi belirtin.

if_unmodified_since
datetime

Bir DateTime değeri. Azure, geçirilen tarih değerinin UTC olmasını bekler. Saat dilimi dahil edilirse, UTC olmayan tarih saatleri UTC'ye dönüştürülür. Saat dilimi bilgisi olmadan bir tarih geçirilirse UTC olduğu varsayılır. İşlemi yalnızca kaynak belirtilen tarih/saatten sonra değiştirilmemişse gerçekleştirmek için bu üst bilgiyi belirtin.

if_tags_match_condition
str

Blob etiketleri üzerinde yalnızca eşleşen değere sahip blob üzerinde çalışacak bir SQL where yan tümcesi belirtin. Örneğin "\"tagname\"='my tag'"

Sürüm 12.4.0'da yeni.

raise_on_any_failure
bool

Bu, varsayılan olarak True olan bir boole parametresidir. Bu ayarlandığında, tek bir işlem hatası olsa bile bir özel durum oluşturulur.

timeout
int

İşlemin sunucu tarafı zaman aşımını saniye olarak ayarlar. Diğer ayrıntılar için bkz: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Bu değer istemcide izlenmiyor veya doğrulanmıyor. İstemci tarafı ağ zaman aşımlarını yapılandırmak için buraya bakın.

Döndürülenler

Her blob için sırayla bir yanıt yineleyicisi

Dönüş türü

delete_container

Belirtilen kapsayıcıyı silinmek üzere işaretler. Kapsayıcı ve içindeki tüm bloblar daha sonra çöp toplama sırasında silinir.

delete_container(**kwargs: Any) -> None

Parametreler

lease
BlobLeaseClient veya str

Belirtilirse, delete_container yalnızca kapsayıcının kirası etkinse ve bu kimlikle eşleşiyorsa başarılı olur. Kapsayıcının etkin bir kirası varsa gereklidir.

if_modified_since
datetime

Bir DateTime değeri. Azure, geçirilen tarih değerinin UTC olmasını bekler. Saat dilimi dahil edilirse, UTC olmayan tarih saatleri UTC'ye dönüştürülür. Saat dilimi bilgisi olmadan bir tarih geçirilirse UTC olduğu varsayılır. İşlemi yalnızca kaynak belirtilen süreden sonra değiştirilmişse gerçekleştirmek için bu üst bilgiyi belirtin.

if_unmodified_since
datetime

Bir DateTime değeri. Azure, geçirilen tarih değerinin UTC olmasını bekler. Saat dilimi dahil edilirse, UTC olmayan tarih saatleri UTC'ye dönüştürülür. Saat dilimi bilgisi olmadan bir tarih geçirilirse UTC olduğu varsayılır. İşlemi yalnızca kaynak belirtilen tarih/saatten sonra değiştirilmemişse gerçekleştirmek için bu üst bilgiyi belirtin.

etag
str

ETag değeri veya joker karakter (*). Kaynağın değişip değişmediğini denetlemek ve match_condition parametresi tarafından belirtilen koşula göre hareket etmek için kullanılır.

match_condition
MatchConditions

Etag'de kullanılacak eşleştirme koşulu.

timeout
int

İşlemin sunucu tarafı zaman aşımını saniye olarak ayarlar. Diğer ayrıntılar için bkz: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Bu değer istemcide izlenmez veya doğrulanmaz. İstemci tarafı ağ zaman aşımlarını yapılandırmak için buraya bakın.

Dönüş türü

download_blob

StorageStreamDownloader'a bir blob indirir. Readall() yöntemi tüm içeriği okumak için kullanılmalıdır veya blobu bir akışa indirmek için readinto() kullanılmalıdır. chunks() kullanmak, kullanıcının öbekler içindeki içeriği yinelemesine olanak tanıyan bir yineleyici döndürür.

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

Parametreler

blob
str veya BlobProperties
Gerekli

Etkileşim kurulacak blob. Belirtilirse, bu değer blob URL'sinde belirtilen bir blob değerini geçersiz kılar.

offset
int
Gerekli

Blobun bir bölümünü indirmek için kullanılacak bayt aralığının başlangıcı. Uzunluk sağlanmışsa ayarlanmalıdır.

length
int
Gerekli

Akıştan okunacak bayt sayısı. Bu isteğe bağlıdır, ancak en iyi performans için sağlanmalıdır.

version_id
str

version id parametresi, mevcut olduğunda indirilmesi gereken blobun sürümünü belirten opak bir DateTime değeridir.

Sürüm 12.4.0'da yeni.

Bu anahtar sözcük bağımsız değişkeni '2019-12-12' API sürümünde sunulmuştur.

validate_content
bool

True ise blobun her bir öbeği için bir MD5 karması hesaplar. Depolama hizmeti, gönderilen karma ile gelen içeriğin karması denetler. Https (varsayılan) zaten doğrulandığından https yerine http kullanılıyorsa, bu öncelikle kablodaki bitflip'leri algılamak için değerlidir. Bu MD5 karması blob ile depolanmaz. Ayrıca etkinleştirilirse bellek açısından verimli karşıya yükleme algoritmasının kullanılmayacağını unutmayın çünkü MD5 karmasının hesaplanması tüm blokları arabelleğe almayı gerektirir ve bunu yapmak bellek açısından verimli algoritmanın amacını alt eder.

lease
BlobLeaseClient veya str

Blob etkin bir kiraya sahipse gereklidir. Belirtilirse, download_blob yalnızca blob'un kirası etkinse ve bu kimlikle eşleşirse başarılı olur. Değer bir BlobLeaseClient nesnesi veya dize olarak kira kimliği olabilir.

if_modified_since
datetime

Bir DateTime değeri. Azure, geçirilen tarih değerinin UTC olmasını bekler. Saat dilimi dahil edilirse, UTC olmayan tarih saatleri UTC'ye dönüştürülür. Saat dilimi bilgisi olmadan bir tarih geçirilirse UTC olduğu varsayılır. Bu üst bilgiyi yalnızca kaynak belirtilen süreden sonra değiştirilmişse gerçekleştirmek için belirtin.

if_unmodified_since
datetime

Bir DateTime değeri. Azure, geçirilen tarih değerinin UTC olmasını bekler. Saat dilimi dahil edilirse, UTC olmayan tarih saatleri UTC'ye dönüştürülür. Saat dilimi bilgisi olmadan bir tarih geçirilirse UTC olduğu varsayılır. bu üst bilgiyi, yalnızca kaynak belirtilen tarih/saatten sonra değiştirilmemişse işlemi gerçekleştirmek için belirtin.

etag
str

ETag değeri veya joker karakter (*). Kaynağın değişip değişmediğini denetlemek ve match_condition parametresi tarafından belirtilen koşula göre hareket etmek için kullanılır.

match_condition
MatchConditions

Etag'de kullanılacak eşleştirme koşulu.

if_tags_match_condition
str

Yalnızca eşleşen bir değere sahip blob üzerinde çalışmak için blob etiketleri üzerinde bir SQL where yan tümcesi belirtin. Örneğin "\"tagname\"='my tag'"

Sürüm 12.4.0'da yeni.

cpk
CustomerProvidedEncryptionKey

Hizmet tarafındaki verileri verilen anahtarla şifreler. Müşteri tarafından sağlanan anahtarların kullanımı HTTPS üzerinden yapılmalıdır. İstekte şifreleme anahtarının kendisi sağlandığından, anahtarı aktarmak için güvenli bir bağlantı kurulmalıdır.

max_concurrency
int

İndirilmesi gereken paralel bağlantı sayısı.

encoding
str

İndirilen baytların kodunu çözmek için kodlama. Varsayılan değer Yok,yani kod çözme yok şeklindedir.

progress_hook
Callable[[int, int], None]

Uzun süre çalışan bir indirme işleminin ilerleme durumunu izlemek için geri çağırma. İmza function(current: int, total: int) şeklindedir; burada current şu ana kadar aktarılan bayt sayısıdır ve toplam, indirme işleminin toplam boyutudur.

timeout
int

İşlemin sunucu tarafı zaman aşımını saniye olarak ayarlar. Diğer ayrıntılar için bkz: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Bu değer istemcide izlenmez veya doğrulanmaz. İstemci tarafı ağ zaman aşımlarını yapılandırmak için buraya bakın. Bu yöntem hizmete birden çok çağrı yapabilir ve zaman aşımı her çağrıya ayrı ayrı uygulanır. Azure hizmetine birden çok çağrı yapılır ve zaman aşımı her çağrıya ayrı ayrı uygulanır.

Döndürülenler

Akış nesnesi (StorageStreamDownloader)

Dönüş türü

exists

Bir kapsayıcı varsa True döndürür ve aksi takdirde False döndürür.

exists(**kwargs: Any) -> bool

Parametreler

timeout
int

İşlemin sunucu tarafı zaman aşımını saniye olarak ayarlar. Diğer ayrıntılar için bkz: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Bu değer istemcide izlenmez veya doğrulanmaz. İstemci tarafı ağ zaman aşımlarını yapılandırmak için buraya bakın.

Döndürülenler

boolean

Dönüş türü

find_blobs_by_tags

Belirtilen kapsayıcının altındaki etiketleri verilen arama ifadesiyle eşleşen blobları listelemek için bir oluşturucu döndürür. Oluşturucu, hizmet tarafından döndürülen devamlılık belirteçlerini yavaş bir şekilde izler.

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

Parametreler

filter_expression
str
Gerekli

Etiketleri belirtilen koşulla eşleşen blobları bulmak için ifade. Örneğin ""yourtagname"='firsttag' and "yourtagname2"='secondtag'"

results_per_page
int

Sayfalandırma sırasında sayfa başına en yüksek sonuç.

timeout
int

İşlemin sunucu tarafı zaman aşımını saniye olarak ayarlar. Diğer ayrıntılar için bkz: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Bu değer istemcide izlenmez veya doğrulanmaz. İstemci tarafı ağ zaman aşımlarını yapılandırmak için buraya bakın.

Döndürülenler

FilteredBlob'un yinelenebilir (otomatik sayfalama) yanıtı.

Dönüş türü

from_connection_string

Bağlantı Dizesinden ContainerClient oluşturun.

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

Parametreler

conn_str
str
Gerekli

Azure Depolama hesabına bağlantı dizesi.

container_name
str
Gerekli

Blob için kapsayıcı adı.

credential
varsayılan değer: None

Kimlik doğrulaması için kullanılan kimlik bilgileri. Hesap URL'sinde zaten bir SAS belirteci varsa veya bağlantı dizesinde zaten paylaşılan erişim anahtarı değerleri varsa bu isteğe bağlıdır. Değer bir SAS belirteci dizesi, azure.core.credentials öğesinden AzureSasCredential veya AzureNamedKeyCredential örneği, hesap paylaşılan erişim anahtarı veya azure.identity'den tokenCredentials sınıfının bir örneği olabilir. Burada sağlanan kimlik bilgileri, bağlantı dizesindeki kimlik bilgilerine göre önceliklidir. AzureNamedKeyCredential örneğini kullanıyorsanız depolama hesabı adı "name" ve depolama hesabı anahtarı "anahtar" olmalıdır.

Döndürülenler

Kapsayıcı istemcisi.

Dönüş türü

from_container_url

Kapsayıcı URL'sinden ContainerClient oluşturun.

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

Parametreler

container_url
str
Gerekli

Kullanılırsa SAS belirteci de dahil olmak üzere Kapsayıcının tam uç nokta URL'si. Bu, geçerli location_mode bağlı olarak birincil uç nokta veya ikincil uç nokta olabilir.

credential
varsayılan değer: None

Kimlik doğrulaması için kullanılan kimlik bilgileri. Hesap URL'sinde zaten bir SAS belirteci varsa veya bağlantı dizesinde zaten paylaşılan erişim anahtarı değerleri varsa bu isteğe bağlıdır. Değer bir SAS belirteci dizesi, azure.core.credentials öğesinden AzureSasCredential veya AzureNamedKeyCredential örneği, hesap paylaşılan erişim anahtarı veya azure.identity'den tokenCredentials sınıfının bir örneği olabilir. Kaynak URI'sinde zaten bir SAS belirteci varsa, bu durum açık bir kimlik bilgisi lehine yoksayılır

  • Çakışan SAS belirteçlerinin bir ValueError oluşturacağı AzureSasCredential durumu dışında. AzureNamedKeyCredential örneğini kullanıyorsanız depolama hesabı adı "name" ve depolama hesabı anahtarı "anahtar" olmalıdır.

Döndürülenler

Kapsayıcı istemcisi.

Dönüş türü

get_account_information

Depolama hesabıyla ilgili bilgileri alır.

Bilgiler, kullanıcının bir kapsayıcı veya blob için SAS'sine sahip olması durumunda da alınabilir. Döndürülen sözlükteki anahtarlar 'sku_name' ve 'account_kind' içerir.

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

Döndürülenler

Hesap bilgilerinin bir dict'i (SKU ve hesap türü).

Dönüş türü

get_blob_client

Belirtilen blobla etkileşime geçmek için bir istemci alın.

Blob zaten mevcut değil.

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

Parametreler

blob
str veya BlobProperties
Gerekli

Etkileşim kurulacak blob.

snapshot
str
varsayılan değer: None

Üzerinde çalışılan isteğe bağlı blob anlık görüntüsü. Bu anlık görüntü kimliği dizesi veya içinden create_snapshotdöndürülen yanıt olabilir.

version_id
str

Sürüm kimliği parametresi, mevcut olduğunda üzerinde çalışacak blobun sürümünü belirten opak bir DateTime değeridir.

Döndürülenler

A BlobClient.

Dönüş türü

get_container_access_policy

Belirtilen kapsayıcının izinlerini alır. İzinler, kapsayıcı verilerine genel olarak erişilip erişilemeyeceğini gösterir.

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

Parametreler

lease
BlobLeaseClient veya str

Belirtilirse, get_container_access_policy yalnızca kapsayıcının kirası etkinse ve bu kimlikle eşleşiyorsa başarılı olur.

timeout
int

İşlemin sunucu tarafı zaman aşımını saniye olarak ayarlar. Diğer ayrıntılar için bkz: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Bu değer istemcide izlenmiyor veya doğrulanmıyor. İstemci tarafı ağ zaman aşımlarını yapılandırmak için buraya bakın.

Döndürülenler

Bir dikte ilke bilgilerine erişin.

Dönüş türü

get_container_properties

Belirtilen kapsayıcı için kullanıcı tanımlı tüm meta verileri ve sistem özelliklerini döndürür. Döndürülen veriler kapsayıcının blob listesini içermez.

get_container_properties(**kwargs: Any) -> ContainerProperties

Parametreler

lease
BlobLeaseClient veya str

Belirtilirse, get_container_properties yalnızca kapsayıcının kirası etkinse ve bu kimlikle eşleşiyorsa başarılı olur.

timeout
int

İşlemin sunucu tarafı zaman aşımını saniye olarak ayarlar. Diğer ayrıntılar için bkz: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Bu değer istemcide izlenmiyor veya doğrulanmıyor. İstemci tarafı ağ zaman aşımlarını yapılandırmak için buraya bakın.

Döndürülenler

Bir kapsayıcı nesnesi içinde belirtilen kapsayıcının özellikleri.

Dönüş türü

list_blob_names

Belirtilen kapsayıcının altındaki blobların adlarını listelemek için bir oluşturucu döndürür. Oluşturucu, hizmet tarafından döndürülen devamlılık belirteçlerini gevşek bir şekilde izler.

Bu API kullanılırken hiçbir ek özellik veya meta veri döndürülmeyecektir. Buna ek olarak, bu API'nin anlık görüntüler, sürümler, geçici olarak silinen bloblar vb. gibi ek bloblar ekleme seçeneği yoktur. Bu verilerden herhangi birini almak için kullanın list_blobs.

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

Parametreler

name_starts_with
str

Sonuçları yalnızca adları belirtilen ön ek ile başlayan blobları döndürecek şekilde filtreler.

timeout
int

İşlemin sunucu tarafı zaman aşımını saniye olarak ayarlar. Diğer ayrıntılar için bkz: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Bu değer istemcide izlenmiyor veya doğrulanmıyor. İstemci tarafı ağ zaman aşımlarını yapılandırmak için buraya bakın.

Döndürülenler

Blob adlarının dize olarak yinelenebilir (otomatik sayfalama) yanıtı.

Dönüş türü

list_blobs

Belirtilen kapsayıcının altındaki blobları listelemek için bir oluşturucu döndürür. Oluşturucu, hizmet tarafından döndürülen devamlılık belirteçlerini gevşek bir şekilde izler.

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

Parametreler

name_starts_with
str
Gerekli

Sonuçları yalnızca adları belirtilen ön ek ile başlayan blobları döndürecek şekilde filtreler.

include
list[str] veya str
Gerekli

Yanıta eklenecek bir veya daha fazla ek veri kümesi belirtir. Seçenekler şunlardır: 'snapshots', 'metadata', 'uncommittedblobs', 'copy', 'deleted', 'deletedwithversions', 'tags', 'versions', 'immutabilitypolicy', 'legalhold'.

timeout
int

İşlemin sunucu tarafı zaman aşımını saniye olarak ayarlar. Diğer ayrıntılar için bkz: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Bu değer istemcide izlenmiyor veya doğrulanmıyor. İstemci tarafı ağ zaman aşımlarını yapılandırmak için buraya bakın.

Döndürülenler

BlobProperties'in yinelenebilir (otomatik sayfalama) yanıtı.

Dönüş türü

set_container_access_policy

Paylaşılan Erişim İmzaları ile kullanılabilecek belirtilen kapsayıcı veya depolanmış erişim ilkeleri için izinleri ayarlar. İzinler, bir kapsayıcıdaki bloblara genel olarak erişilip erişilemeyeceğini gösterir.

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

Parametreler

signed_identifiers
dict[str, AccessPolicy]
Gerekli

Kapsayıcıyla ilişkilendirilecek erişim ilkeleri sözlüğü. Sözlük en fazla 5 öğe içerebilir. Boş bir sözlük, hizmette ayarlanan erişim ilkelerini temizler.

public_access
PublicAccess
Gerekli

Olası değerler şunlardır: 'kapsayıcı', 'blob'.

lease
BlobLeaseClient veya str

Kapsayıcının etkin bir kirası varsa gereklidir. Değer bir BlobLeaseClient nesnesi veya dize olarak kira kimliği olabilir.

if_modified_since
datetime

Tarih saat değeri. Azure, geçirilen tarih değerinin UTC olmasını bekler. Saat dilimi dahil edilirse, UTC olmayan tarih saatleri UTC'ye dönüştürülür. Saat dilimi bilgisi olmadan bir tarih geçirilirse UTC olduğu varsayılır. İşlemi yalnızca kaynak belirtilen tarih/saatten sonra değiştirilmişse gerçekleştirmek için bu üst bilgiyi belirtin.

if_unmodified_since
datetime

Tarih saat değeri. Azure, geçirilen tarih değerinin UTC olmasını bekler. Saat dilimi dahil edilirse, UTC olmayan tarih saatleri UTC'ye dönüştürülür. Saat dilimi bilgisi olmadan bir tarih geçirilirse UTC olduğu varsayılır. İşlemi yalnızca kaynak belirtilen tarih/saatten sonra değiştirilmemişse gerçekleştirmek için bu üst bilgiyi belirtin.

timeout
int

İşlemin sunucu tarafı zaman aşımını saniye olarak ayarlar. Diğer ayrıntılar için bkz: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Bu değer istemcide izlenmiyor veya doğrulanmıyor. İstemci tarafı ağ zaman aşımlarını yapılandırmak için buraya bakın.

Döndürülenler

Kapsayıcı tarafından güncelleştirilmiş özellik diktesi (Etag ve son değiştirme).

Dönüş türü

set_container_metadata

Belirtilen kapsayıcı için bir veya daha fazla kullanıcı tanımlı ad-değer çifti ayarlar. Bu işleme yapılan her çağrı, kapsayıcıya eklenmiş olan tüm meta verilerin yerini alır. Kapsayıcıdan tüm meta verileri kaldırmak için, meta veri diktesi olmadan bu işlemi çağırın.

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

Parametreler

metadata
dict[str, str]
Gerekli

Kapsayıcıyla meta veri olarak ilişkilendirilecek ad-değer çiftlerini içeren bir dikte. Örnek: {'category':'test'}

lease
BlobLeaseClient veya str

Belirtilirse, set_container_metadata yalnızca kapsayıcının kirası etkinse ve bu kimlikle eşleşiyorsa başarılı olur.

if_modified_since
datetime

Bir DateTime değeri. Azure, geçirilen tarih değerinin UTC olmasını bekler. Saat dilimi dahil edilirse, UTC olmayan tarih saatleri UTC'ye dönüştürülür. Saat dilimi bilgisi olmadan bir tarih geçirilirse UTC olduğu varsayılır. İşlemi yalnızca kaynak belirtilen süreden sonra değiştirilmişse gerçekleştirmek için bu üst bilgiyi belirtin.

if_unmodified_since
datetime

Bir DateTime değeri. Azure, geçirilen tarih değerinin UTC olmasını bekler. Saat dilimi dahil edilirse, UTC olmayan tarih saatleri UTC'ye dönüştürülür. Saat dilimi bilgisi olmadan bir tarih geçirilirse UTC olduğu varsayılır. İşlemi yalnızca kaynak belirtilen tarih/saatten sonra değiştirilmemişse gerçekleştirmek için bu üst bilgiyi belirtin.

etag
str

ETag değeri veya joker karakter (*). Kaynağın değişip değişmediğini denetlemek ve match_condition parametresi tarafından belirtilen koşula göre hareket etmek için kullanılır.

timeout
int

İşlemin sunucu tarafı zaman aşımını saniye olarak ayarlar. Diğer ayrıntılar için bkz: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Bu değer istemcide izlenmiyor veya doğrulanmıyor. İstemci tarafı ağ zaman aşımlarını yapılandırmak için buraya bakın.

Döndürülenler

Kapsayıcı tarafından güncelleştirilmiş özellik diktesi (Etag ve son değiştirme).

Dönüş türü

set_premium_page_blob_tier_blobs

Tüm bloblarda sayfa blobu katmanlarını ayarlar. Bu API yalnızca premium hesaplardaki sayfa blobları için desteklenir.

Tek bir istekte güncelleştirilebilecek blob sayısı üst sınırı 256'dır.

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

Parametreler

premium_page_blob_tier
PremiumPageBlobTier
Gerekli

Blobu ayarlanacağı sayfa blobu katmanı değeri. Katman, blobun boyutuyla ve izin verilen IOPS sayısıyla ilişkilidir. Bu yalnızca premium depolama hesaplarında sayfa blobları için geçerlidir.

Not

Farklı bloblarda farklı katman ayarlamak istiyorsanız lütfen bu konum parametresini Yok olarak ayarlayın.

Ardından her BlobProperties üzerindeki blob katmanı alınır.

blobs
str veya dict(str, Any) veya BlobProperties
Gerekli

Etkileşim kurulacak bloblar. Bu tek bir blob olabilir veya her değerin blobun adı (str) veya BlobProperties olduğu birden çok değer sağlanabilir.

Not

Blob türü dikte olduğunda anahtarların listesi, değer kuralları aşağıdadır.

blob adı:

key: 'name', value type: str

premium blob katmanı:

key: 'blob_tier', değer türü: PremiumPageBlobTier

Kira:

key: 'lease_id', değer türü: Union[str, LeaseClient]

alt isteğin zaman aşımı:

key: 'timeout', değer türü: int

timeout
int

İşlemin sunucu tarafı zaman aşımını saniye olarak ayarlar. Diğer ayrıntılar için bkz: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Bu değer istemcide izlenmez veya doğrulanmaz. İstemci tarafı ağ zaman aşımlarını yapılandırmak için buraya bakın.

raise_on_any_failure
bool

Bu, varsayılan olarak True olan bir boole parametresidir. Bu ayarlandığında, tek bir işlem hatası olsa bile bir özel durum oluşturulur.

Döndürülenler

Her blob için sırayla bir yanıt yineleyicisi

Dönüş türü

<xref:iterator>[HttpResponse]

set_standard_blob_tier_blobs

Bu işlem blok bloblarında katmanı ayarlar.

Blok blobu katmanı Sık Erişimli/Seyrek Erişimli/Arşiv depolama türünü belirler. Bu işlem blob'un ETag'ini güncelleştirmez.

Tek bir istekte güncelleştirilebilecek blob sayısı üst sınırı 256'dır.

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

Parametreler

standard_blob_tier
str veya StandardBlobTier
Gerekli

Tüm bloblarda ayarlanacak katmanı gösterir. Seçenekler arasında 'Sık Erişimli', 'Seyrek Erişimli', 'Arşiv' bulunur. Sık erişim katmanı, sık erişilen verileri depolamak için iyileştirilmiştir. Seyrek erişimli depolama katmanı, seyrek erişilen ve en az bir ay saklanan verileri depolamak için iyileştirilmiştir. Arşiv katmanı, seyrek erişilen ve esnek gecikme süresi gereksinimleriyle en az altı ay boyunca depolanan verileri depolamak için iyileştirilmiştir.

Not

Farklı bloblarda farklı katman ayarlamak istiyorsanız bu konum parametresini Yok olarak ayarlayın.

Ardından her BlobProperties üzerindeki blob katmanı alınır.

blobs
str veya dict(str, Any) veya BlobProperties
Gerekli

Etkileşim kurulacak bloblar. Bu tek bir blob olabileceği gibi, her değerin blobun adı (str) veya BlobProperties olduğu birden çok değer sağlanabilir.

Not

Blob türü dikte olduğunda anahtarların ve değer kurallarının listesi aşağıdadır.

blob adı:

key: 'name', value type: str

standart blob katmanı:

key: 'blob_tier', değer türü: StandardBlobTier

yeniden doldurma önceliği:

key: 'rehydrate_priority', değer türü: RehydratePriority

Kira:

key: 'lease_id', değer türü: Union[str, LeaseClient]

An -lık görüntü:

key: "snapshot", değer türü: str

sürüm kimliği:

key: "version_id", değer türü: str

etiketler eşleşme koşulu:

key: 'if_tags_match_condition', değer türü: str

alt isteğin zaman aşımı:

key: 'timeout', değer türü: int

rehydrate_priority
RehydratePriority

Arşivlenmiş blobu yeniden doldurma önceliğini gösterir

if_tags_match_condition
str

Yalnızca eşleşen bir değere sahip blob üzerinde çalışmak için blob etiketleri üzerinde bir SQL where yan tümcesi belirtin. Örneğin "\"tagname\"='my tag'"

Sürüm 12.4.0'da yeni.

timeout
int

İşlemin sunucu tarafı zaman aşımını saniye olarak ayarlar. Diğer ayrıntılar için bkz: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Bu değer istemcide izlenmez veya doğrulanmaz. İstemci tarafı ağ zaman aşımlarını yapılandırmak için buraya bakın.

raise_on_any_failure
bool

Bu, varsayılan olarak True olan bir boole parametresidir. Bu ayarlandığında, tek bir işlem hatası olsa bile bir özel durum oluşturulur.

Döndürülenler

Her blob için sırayla bir yanıt yineleyicisi

Dönüş türü

upload_blob

Otomatik öbekleme ile veri kaynağından yeni bir blob oluşturur.

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

Parametreler

name
str veya BlobProperties
Gerekli

Etkileşim kurulacak blob. Belirtilirse, bu değer blob URL'sinde belirtilen bir blob değerini geçersiz kılar.

data
Gerekli

Karşıya yüklenecek blob verileri.

blob_type
BlobType
Gerekli

Blobun türü. Bu BlockBlob, PageBlob veya AppendBlob olabilir. Varsayılan değer BlockBlob'dur.

length
int
Gerekli

Akıştan okunacak bayt sayısı. Bu isteğe bağlıdır, ancak en iyi performans için sağlanmalıdır.

metadata
dict(str, str)
Gerekli

Blob ile meta veri olarak ilişkili ad-değer çiftleri.

overwrite
bool

Karşıya yüklenecek blob'un geçerli verilerin üzerine yazıp yazmaması gerekir. True ise, upload_blob var olan verilerin üzerine yazar. False olarak ayarlanırsa işlem ResourceExistsError ile başarısız olur. Yukarıdakilerin istisnası Ekleme blobu türleridir: False olarak ayarlanırsa ve veriler zaten varsa, hata oluşmaz ve veriler mevcut bloba eklenir. overwrite=True olarak ayarlanırsa mevcut ekleme blobu silinir ve yeni bir blob oluşturulur. Varsayılan değer False'tur.

content_settings
ContentSettings

Blob özelliklerini ayarlamak için kullanılan ContentSettings nesnesi. İçerik türü, kodlama, dil, bırakma, md5 ve önbellek denetimini ayarlamak için kullanılır.

validate_content
bool

True ise blobun her bir öbeği için bir MD5 karması hesaplar. Depolama hizmeti, gönderilen karma ile gelen içeriğin karması denetler. Https (varsayılan) zaten doğrulandığından https yerine http kullanılıyorsa, bu öncelikle kablodaki bitflip'leri algılamak için değerlidir. Bu MD5 karması blob ile depolanmaz. Ayrıca etkinleştirilirse bellek açısından verimli karşıya yükleme algoritmasının kullanılmayacağını unutmayın çünkü MD5 karmasının hesaplanması tüm blokları arabelleğe almayı gerektirir ve bunu yapmak bellek açısından verimli algoritmanın amacını alt eder.

lease
BlobLeaseClient veya str

Kapsayıcının etkin bir kirası varsa gereklidir. Değer bir BlobLeaseClient nesnesi veya dize olarak kira kimliği olabilir.

if_modified_since
datetime

Bir DateTime değeri. Azure, geçirilen tarih değerinin UTC olmasını bekler. Saat dilimi dahil edilirse, UTC olmayan tarih saatleri UTC'ye dönüştürülür. Saat dilimi bilgisi olmadan bir tarih geçirilirse UTC olduğu varsayılır. Bu üst bilgiyi yalnızca kaynak belirtilen süreden sonra değiştirilmişse gerçekleştirmek için belirtin.

if_unmodified_since
datetime

Bir DateTime değeri. Azure, geçirilen tarih değerinin UTC olmasını bekler. Saat dilimi dahil edilirse, UTC olmayan tarih saatleri UTC'ye dönüştürülür. Saat dilimi bilgisi olmadan bir tarih geçirilirse UTC olduğu varsayılır. bu üst bilgiyi, yalnızca kaynak belirtilen tarih/saatten sonra değiştirilmemişse işlemi gerçekleştirmek için belirtin.

etag
str

ETag değeri veya joker karakter (*). Kaynağın değişip değişmediğini denetlemek ve match_condition parametresi tarafından belirtilen koşula göre hareket etmek için kullanılır.

match_condition
MatchConditions

Etag'de kullanılacak eşleştirme koşulu.

if_tags_match_condition
str

Yalnızca eşleşen bir değere sahip blob üzerinde çalışmak için blob etiketleri üzerinde bir SQL where yan tümcesi belirtin. Örneğin "\"tagname\"='my tag'"

Sürüm 12.4.0'da yeni.

timeout
int

İşlemin sunucu tarafı zaman aşımını saniye olarak ayarlar. Diğer ayrıntılar için bkz: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Bu değer istemcide izlenmiyor veya doğrulanmıyor. İstemci tarafı ağ zaman aşımlarını yapılandırmak için buraya bakın. Bu yöntem hizmete birden çok çağrı yapabilir ve zaman aşımı her çağrıya ayrı ayrı uygulanır.

premium_page_blob_tier
PremiumPageBlobTier

Blobu ayarlanacağı sayfa blobu katmanı değeri. Katman, blobun boyutuyla ve izin verilen IOPS sayısıyla ilişkilidir. Bu yalnızca premium depolama hesaplarında sayfa blobları için geçerlidir.

standard_blob_tier
StandardBlobTier

Blobu ayarlanacağı standart blob katmanı değeri. Kitaplığın bu sürümü için bu yalnızca standart depolama hesaplarında blok blobları için geçerlidir.

maxsize_condition
int

İsteğe bağlı koşullu üst bilgi. Ekleme blobu için izin verilen bayt cinsinden maksimum uzunluk. Ekleme Bloğu işlemi blob'un bu sınırı aşmasına neden olacaksa veya blob boyutu bu üst bilgide belirtilen değerden daha büyükse istek MaxBlobSizeConditionNotMet hatasıyla başarısız olur (HTTP durum kodu 412 - Önkoşul Başarısız oldu).

max_concurrency
int

Blob boyutu 64 MB'ı aştığında kullanılacak en fazla paralel bağlantı sayısı.

cpk
CustomerProvidedEncryptionKey

Hizmet tarafındaki verileri verilen anahtarla şifreler. Müşteri tarafından sağlanan anahtarların kullanımı HTTPS üzerinden yapılmalıdır. İstekte şifreleme anahtarının kendisi sağlandığından, anahtarı aktarmak için güvenli bir bağlantı kurulmalıdır.

encryption_scope
str

Hizmet üzerindeki verileri şifrelemek için kullanılan önceden tanımlanmış bir şifreleme kapsamı. Yönetim API'sini kullanarak bir şifreleme kapsamı oluşturulabilir ve burada ada göre başvurulabilir. Kapsayıcıda varsayılan bir şifreleme kapsamı tanımlanmışsa, kapsayıcı düzeyi kapsam geçersiz kılmalara izin verecek şekilde yapılandırılmışsa bu değer bunu geçersiz kılar. Aksi takdirde bir hata oluşur.

Sürüm 12.2.0'da yeni.

encoding
str

Varsayılan olarak UTF-8'e ayarlanır.

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

Uzun süre çalışan bir karşıya yüklemenin ilerleme durumunu izlemek için geri arama. İmza işlevidir (geçerli: int, toplam: İsteğe bağlı[int]), burada geçerli, şu ana kadar aktarılan bayt sayısıdır ve toplam blobun boyutudur veya boyut bilinmiyorsa Hiçbiri olur.

Döndürülenler

Yeni yüklenen blobla etkileşime geçmek için bir BlobClient.

Dönüş türü

walk_blobs

Belirtilen kapsayıcının altındaki blobları listelemek için bir oluşturucu döndürür. Oluşturucu, hizmet tarafından döndürülen devamlılık belirteçlerini gevşek bir şekilde izler. Bu işlem blobları belirtilen sınırlayıcı karakteriyle sınırlandırılmış şekilde bir hiyerarşiye uygun olarak listeler.

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

Parametreler

name_starts_with
str
Gerekli

Sonuçları yalnızca adları belirtilen ön ek ile başlayan blobları döndürecek şekilde filtreler.

include
list[str] veya str
Gerekli

Yanıta eklenecek bir veya daha fazla ek veri kümesi belirtir. Seçenekler şunlardır: 'snapshots', 'metadata', 'uncommittedblobs', 'copy', 'deleted', 'deletedwithversions', 'tags', 'versions', 'immutabilitypolicy', 'legalhold'.

delimiter
str
Gerekli

İstek bu parametreyi içerdiğinde, işlem yanıt gövdesinde adları sınırlayıcı karakterinin görünümüne kadar aynı alt dizeyle başlayan tüm bloblar için yer tutucu işlevi gören bir BlobPrefix öğesi döndürür. Sınırlayıcı tek bir karakter veya dize olabilir.

timeout
int

İşlemin sunucu tarafı zaman aşımını saniye olarak ayarlar. Diğer ayrıntılar için bkz: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Bu değer istemcide izlenmiyor veya doğrulanmıyor. İstemci tarafı ağ zaman aşımlarını yapılandırmak için buraya bakın.

Döndürülenler

BlobProperties'in yinelenebilir (otomatik sayfalama) yanıtı.

Dönüş türü

Öznitelikler

api_version

İstekler için kullanılan Depolama API'sinin sürümü.

location_mode

İstemcinin şu anda kullandığı konum modu.

Varsayılan olarak bu "birincil" olur. Seçenekler arasında "birincil" ve "ikincil" bulunur.

primary_endpoint

Tam birincil uç nokta URL'si.

primary_hostname

Birincil uç noktanın ana bilgisayar adı.

secondary_endpoint

Yapılandırıldıysa tam ikincil uç nokta URL'si.

Kullanılabilir değilse bir ValueError oluşturulur. İkincil ana bilgisayar adını açıkça belirtmek için, örneklemede isteğe bağlı secondary_hostname anahtar sözcük bağımsız değişkenini kullanın.

Özel durumlar

secondary_hostname

İkincil uç noktanın ana bilgisayar adı.

Kullanılamıyorsa, bu Yok olur. İkincil ana bilgisayar adını açıkça belirtmek için, örneklemede isteğe bağlı secondary_hostname anahtar sözcük bağımsız değişkenini kullanın.

url

Kullanılırsa SAS belirteci de dahil olmak üzere bu varlığın tam uç nokta URL'si.

Bu, geçerli location_modeöğesine bağlı olarak birincil uç nokta veya ikincil uç nokta olabilir. :returns: Kullanılırsa SAS belirteci de dahil olmak üzere bu varlığın tam uç nokta URL'si. :rtype: str