Verwenden Sie Azure Blob Storage aus Python

Was ist Azure Blob-Speicher?

Azure Blob Storage ist einer der Dienste von Azure Storage, einem Speicherdienst, der eine große Datenmenge wie Binärdateien speichern kann.

Ein Blob repräsentiert eine Datei oder Daten, die von einem Container organisiert werden. Jeder Container ist an ein Speicherkonto gebunden. Daher ist die hierarchische Struktur wie in der folgenden Abbildung dargestellt.

blob

https://docs.microsoft.com/ja-jp/azure/storage/storage-python-how-to-use-blob-storage

Azure Storage bietet SDKs für Nodejs, Python usw. sowie .net.

Dieses Mal werde ich versuchen, Blob-Speicher mit Pythons SDK zu verwenden.

Erstellen Sie ein Azure-Speicherkonto

Erstellen Sie ein Azure-Speicherkonto über das Administrationsportal.

Screenshot from 2016-12-26 12-51-39.png

Sobald Sie ein Speicherkonto erstellt haben, erhalten Sie einen Zugriffsschlüssel. Drücken Sie im Bildschirm zur Verwaltung des Speicherkontos auf [Zugriffsschlüssel], um den Zugriffsschlüssel abzurufen.

Screenshot from 2016-12-26 12-53-22.png

Dieses Mal benötigen Sie zwei Elemente: [Name des Speicherkontos] und [Zugriffsschlüssel].

Bibliotheksinstallation

Die diesmal verwendete Python ist 3.5.

Installieren Sie zunächst das Azure Storage Python SDK von pip

pip install azure-storage

Machen Sie einen Behälter

Erstellen Sie zunächst einen Container, der sich wie ein Ordner für Blobs verhält.

from azure.storage.blob import BlockBlobService
from azure.storage.blob import PublicAccess

account_name='{your account name}'
account_key='{your account key}'
container_name='testcontainer'

service = BlockBlobService(account_name=account_name,account_key=account_key)
service.create_container(container_name)

Wenn Sie dies tun, können Sie sehen, dass der Container aus dem Blob auf dem Admin-Bildschirm erstellt wurde.

Screenshot from 2016-12-26 13-03-49.png

Erstellen Sie einen Blob in einem Container

Lassen Sie uns tatsächlich einen Blob im Container erstellen und die Daten hochladen.

from azure.storage.blob import BlockBlobService

account_name='{your account name}'
account_key='{your account key}'
container_name='testcontainer'
file_path='sample1.png'

service = BlockBlobService(account_name=account_name,account_key=account_key)
service.create_blob_from_path(container_name,'sample_blob1',file_path)

Sie können sehen, dass der Blob erstellt wurde.

Screenshot from 2016-12-26 13-06-23.png

Standardmäßig handelt es sich um privaten Zugriff. Ändern Sie daher alle Container in öffentlichen Zugriff.

Drücken Sie auf dem Containerbildschirm auf Zugriffsrichtlinie und wählen Sie Container aus.

Screenshot from 2016-12-26 13-07-42.png

Klicken Sie auf den von Ihnen erstellten Blob und versuchen Sie, über Ihren Browser auf die URL zuzugreifen.

Screenshot from 2016-12-26 13-08-32.png

Ich konnte über meinen Browser auf die hochgeladene Datei zugreifen.

Holen Sie sich eine Liste von Blobs

Sie können die Liste der Blobs im Container mit dem folgenden Programm abrufen.

from azure.storage.blob import BlockBlobService

account_name='{your account name}'
account_key='{your account key}'
container_name='testcontainer'

service = BlockBlobService(account_name=account_name,account_key=account_key)
blobs = service.list_blobs(container_name)
for blob in blobs:
    print(blob.name)

Holen Sie sich Blob

Gehen Sie wie folgt vor, um blob programmgesteuert herunterzuladen:

from azure.storage.blob import BlockBlobService

account_name='{your account name}'
account_key='{your account key}'
container_name='testcontainer'
blob_name='sample_blob1'

service = BlockBlobService(account_name=account_name, account_key=account_key)
service.get_blob_to_path(container_name,blob_name,'download.png')

Stellen Sie sicher, dass Sie den von Ihnen hochgeladenen Blob mit dem Dateinamen [download.png] erhalten.

Blob löschen

Gehen Sie wie folgt vor, um einen Blob zu löschen:

from azure.storage.blob import BlockBlobService

account_name='{your account name}'
account_key='{your account key}'
container_name='testcontainer'
blob_name='sample_blob1'

service = BlockBlobService(account_name=account_name, account_key=account_key)
service.delete_blob(container_name, blob_name)

Sie können bestätigen, dass der Blob verschwunden ist, indem Sie die Aktualisierungstaste drücken.

Screenshot from 2016-12-26 13-15-27.png

Referenz

Beispielcode ist in diesem Repository verfügbar. https://github.com/garicchi/azure-blob-python-sample

Recommended Posts

Verwenden Sie Azure Blob Storage aus Python
Verwenden Sie thingspeak aus Python
Verwenden Sie fließend Python
Verwenden Sie MySQL aus Python
Verwenden Sie MySQL aus Python
Verwenden Sie BigQuery aus Python.
Verwenden Sie mecab-ipadic-neologd von Python
Firebase: Verwenden Sie Cloud Firestore und Cloud Storage von Python
Verwenden Sie die e-Stat-API von Python
Verwendung des Azure Table-Speichers von Django (PTVS)
Verwenden Sie Stanford Core NLP von Python
Lesen und verwenden Sie Python-Dateien aus Python
Verwenden Sie Azure ML Python SDK 4: Schreiben Sie die Ausgabe in den Blob-Speicher - Teil 2
Verwenden Sie zwangsweise Google Translate aus Python
Festlegen der Cache-Steuerung für den BLOB-Speicher in Azure Storage in Python
Verwenden von Cloud-Speicher aus Python3 (Einführung)
Verwenden Sie die kabu Station® API von Python
Verwenden Sie die Flickr-API von Python
Verwenden Sie Azure ML Python SDK 3: Ausgabe in Blob-Speicher schreiben - Teil 1
Verwenden Sie das von fastText trainierte Modell von Python
Verwenden Sie die Google Analytics-API von Python
Datei-Upload in Azure Storage (Python)
Verwenden Sie den PostgreSQL-Datentyp (jsonb) von Python
Verwenden Sie die API-Gruppe A3RT für maschinelles Lernen aus Python
Ich möchte ein Glas aus Python verwenden
Bearbeiten von Azure CosmosDB aus Python Part.2
Verwenden Sie die Google Cloud Vision-API von Python
Verwenden Sie Django aus einem lokalen Python-Skript
Verwenden von C ++ - Funktionen aus Python mit pybind11
Betreiben Sie den Cloud-Objektspeicher von Sakura von Python aus
Verwenden Sie Python und MeCab mit Azure-Funktionen
SQL zu SQL
MeCab von Python
Verwenden Sie Azure ML Python SDK 2: Verwenden Sie ein Dataset als Eingabe-Teil 2
Studie aus Python Hour7: Verwendung von Klassen
[Bash] Holen Sie sich die Kraft von Python aus Bash mithilfe der folgenden Dokumentation
Ich möchte Ceres Solver aus Python verwenden
Verwenden Sie Python und word2vec (gelernt) mit Azure Databricks
Verwenden wir verschiedene Versionen von SQLite3 aus Python3!
Wrap C ++ mit Cython zur Verwendung von Python
Verwenden Sie das nghttp2 Python-Modul von Homebrew aus pyenvs Python
Verwenden Sie Python / Django mit dem Windows Azure Cloud Service!
[Azure-Funktionen / Python] Kettenfunktionen mit Warteschlangenspeicherbindung
Verwenden Sie Tor, um eine Verbindung von urllib2 [Python] [Mac] herzustellen.
Python: Entpacken Sie die Standardeingabe mit zipfile
Verwenden Sie das Paketdichtungsverhältnis für das R-Dichteverhältnis von Python
Berühren Sie MySQL in Python 3
Verwenden Sie config.ini mit Python
Lesen von CSV-Daten aus dem Python-Code des DSX-Objektspeichers
Bedienen Sie Filemaker von Python aus
[Python] Verwenden Sie JSON mit Python
Verwenden Sie Datumsangaben in Python
Greifen Sie über Python auf Bitcoind zu
Änderungen von Python 3.0 zu Python 3.5
Änderungen von Python 2 zu Python 3.0
Python aus oder importieren
Verwenden Sie Valgrind mit Python
Verwenden Sie Mecab mit Python 3
Führen Sie Python aus Excel aus
Installieren Sie Python von der Quelle