Condividi tramite


aio Pacchetto

Classi

BlobClient

Un client per interagire con un BLOB specifico, anche se tale BLOB potrebbe non esistere ancora.

BlobLeaseClient

Crea un nuovo BLOBLeaseClient.

Questo client fornisce operazioni di lease su un BLOBClient o containerClient.

BlobPrefix

Iterabile delle proprietà BLOB.

Restituito da walk_blobs quando viene usato un delimitatore. Può essere considerato come una directory BLOB virtuale.

BlobServiceClient

Un client per interagire con il servizio BLOB a livello di account.

Questo client fornisce operazioni per recuperare e configurare le proprietà dell'account e l'elenco, creare ed eliminare contenitori all'interno dell'account. Per le operazioni relative a un contenitore o BLOB specifico, i client per tali entità possono essere recuperati anche usando le funzioni di get_client .

ContainerClient

Un client per interagire con un contenitore specifico, anche se tale contenitore potrebbe non esistere ancora.

Per le operazioni relative a un BLOB specifico all'interno di questo contenitore, è possibile recuperare un client BLOB usando la get_blob_client funzione.

ExponentialRetry

Ripetizione esponenziale dei tentativi.

Costruisce un oggetto ripetizione dei tentativi esponenziale. Il initial_backoff viene usato per il primo tentativo. I tentativi successivi vengono riprovati dopo initial_backoff + increment_power^retry_count secondi. Per impostazione predefinita, il primo tentativo si verifica dopo 15 secondi, il secondo dopo (15+3^1) = 18 secondi e il terzo dopo (15+3^2) = 24 secondi.

LinearRetry

Ripetizione lineare.

Costruisce un oggetto di ripetizione dei tentativi lineare.

StorageStreamDownloader

Oggetto di streaming da scaricare da Archiviazione di Azure.

Funzioni

download_blob_from_url

Scaricare il contenuto di un BLOB in un file o in un flusso locale.

async download_blob_from_url(blob_url: str, output: str, credential: Optional[Union[str, Dict[str, str], AzureNamedKeyCredential, AzureSasCredential, "TokenCredential"]] # pylint: disable=line-too-long = None, **kwargs) -> None

Parametri

blob_url
str
Necessario

URI completo nel BLOB. Ciò può includere anche un token di firma di accesso condiviso.

output
str oppure <xref:<xref:writable stream>>
Necessario

Dove scaricare i dati. Potrebbe trattarsi di un percorso di file da scrivere in o di un handle di I/O aperto a cui scrivere.

credential
valore predefinito: None

Credenziali con cui eseguire l'autenticazione. Questo è facoltativo se l'URL BLOB ha già un token di firma di accesso condiviso o il BLOB è pubblico. Il valore può essere una stringa di token sas, un'istanza di AzureSasCredential o AzureNamedKeyCredential da azure.core.credential, una chiave di accesso condiviso dell'account o un'istanza di una classe TokenCredentials da azure.identity. Se l'URI della risorsa contiene già un token di firma di accesso condiviso, questo verrà ignorato a favore di una credenziale esplicita

  • tranne nel caso di AzureSasCredential, in cui i token sas in conflitto genereranno un valoreError. Se si usa un'istanza di AzureNamedKeyCredential, "name" deve essere il nome dell'account di archiviazione e "key" deve essere la chiave dell'account di archiviazione.
overwrite
bool

Se il file locale deve essere sovrascritto se esiste già. Il valore predefinito è False : in questo caso verrà generato un valore ValueError se il file esiste già. Se impostato su True, verrà eseguito un tentativo di scrittura nel file esistente. Se viene passato un handle di flusso, questo valore viene ignorato.

max_concurrency
int

Numero di connessioni parallele con cui scaricare.

offset
int

Inizio dell'intervallo di byte da usare per il download di una sezione del BLOB. Deve essere impostato se viene specificata la lunghezza.

length
int

Numero di byte da leggere dal flusso. Questo è facoltativo, ma deve essere fornito per prestazioni ottimali.

validate_content
bool

Se true, calcola un hash MD5 per ogni blocco del BLOB. Il servizio di archiviazione controlla l'hash del contenuto che è arrivato con l'hash inviato. Questo è principalmente utile per rilevare bitflips sul cavo se si usa http anziché https come https (impostazione predefinita) già convalida. Si noti che questo hash MD5 non viene archiviato con il Blob. Si noti anche che, se abilitato, l'algoritmo di caricamento efficiente per la memoria non verrà usato, perché l'elaborazione dell'hash MD5 richiede il buffering di tutti i blocchi e in questo modo lo scopo dell'algoritmo efficiente per la memoria.

Tipo restituito

upload_blob_to_url

Caricare i dati in un determinato URL

I dati verranno caricati come BLOB a blocchi.

param str blob_url: URI completo nel BLOB. Ciò può includere anche un token di firma di accesso condiviso.

param data: i dati da caricare. Può essere byte, testo, iterabile o un oggetto simile a un file.

dati di tipo: byte o str o Iterable

async upload_blob_to_url(blob_url: str, data: Union[Iterable[AnyStr], IO[AnyStr]], credential: Optional[Union[str, Dict[str, str], AzureNamedKeyCredential, AzureSasCredential, "TokenCredential"]] # pylint: disable=line-too-long = None, **kwargs) -> dict[str, Any]

Parametri

credential
valore predefinito: None

Credenziali con cui eseguire l'autenticazione. Questo è facoltativo se l'URL BLOB ha già un token di firma di accesso condiviso. Il valore può essere una stringa di token sas, un'istanza di AzureSasCredential o AzureNamedKeyCredential da azure.core.credential, una chiave di accesso condiviso dell'account o un'istanza di una classe TokenCredentials da azure.identity. Se l'URI della risorsa contiene già un token di firma di accesso condiviso, questo verrà ignorato a favore di una credenziale esplicita

  • tranne nel caso di AzureSasCredential, in cui i token sas in conflitto genereranno un valoreError. Se si usa un'istanza di AzureNamedKeyCredential, "name" deve essere il nome dell'account di archiviazione e "key" deve essere la chiave dell'account di archiviazione.

paramtype credential: Optional[Union[str, Dict[str, str], AzureNamedKeyCredential, AzureSasCredential, "TokenCredential"]] # pylint: disable=line-to-long

parola chiave bool sovrascrive: se il BLOB da caricare deve sovrascrivere i dati correnti. Se True, upload_blob_to_url sovrascriverà i dati esistenti. Se impostato su False, l'operazione avrà esito negativo con resourceExistsError.

parola chiave int max_concurrency: numero di connessioni parallele con cui scaricare.

parola chiave int length: numero di byte da leggere dal flusso. Questo è facoltativo, ma deve essere fornito per prestazioni ottimali.

metadati della parola chiave dict(str,str): coppie nome-valore associate al BLOB come metadati.

parola chiave bool validate_content: se true, calcola un hash MD5 per ogni blocco del BLOB. Il servizio di archiviazione controlla l'hash del contenuto che è arrivato con l'hash inviato. Questo è principalmente utile per rilevare bitflips sul cavo se si usa http anziché https come https (impostazione predefinita) già convalida. Si noti che questo hash MD5 non viene archiviato con il Blob. Si noti anche che, se abilitato, l'algoritmo di caricamento efficiente per la memoria non verrà usato, perché l'elaborazione dell'hash MD5 richiede il buffering di tutti i blocchi e in questo modo lo scopo dell'algoritmo efficiente per la memoria.

codifica str della parola chiave: codifica da usare se il testo viene fornito come input. Impostazione predefinita su UTF-8.

restituisce: proprietà aggiornata blob dict (Etag e ultima modifica)

rtype: dict(str, Any)

blob_url
data