5
3

More than 3 years have passed since last update.

Azure Storageへのファイルアップロード(Python)

Posted at

Azure Storageへのファイルアップロードの手順

Azure Storageへのファイルアップロード方法を以下に記載します。

前提条件

以下の環境にて、構築しております。

OS: Windows10
言語:Python 3.8.6

Azure環境があること
Azureの"ストレージアカウント"サービスにて、新規アカウントを作成していること

アップロード手順

①Python用のAzure Storageパッケージをインストールする。
$ py -m pip install azure-storage-blob == 12.5.0

② Azure ポータルにて、"ストレージアカウント"サービスから、Blob service → コンテナーを選択する。
その後、接続文字列を確認する。

③ 以下のプログラムが記載された"sample_upload.py"を実行する。
なお、実行位置に"Hello World.txt"(中身は自由)を配置しておくこと。

$ py sample_upload.py

※ファイル内の以下の箇所を自身の環境に合わせて変更してください。
  <接続文字列>, <コンテナ名称>, <アップロード先のフォルダ名称>

from azure.storage.blob import BlobServiceClient, BlobClient, ContainerClient, __version__

# Azure Storage上にて、接続文字列を確認する。
connect_str = <接続文字列>

# Create a file in local data directory to upload and download
container_name = "<コンテナ名称>"

# Azure Storage内は厳密には、フォルダという構成ではない。
# 一応 "\"区切りをすることで、疑似的にフォルダ構造を実現することは可能
upload_path = "<アップロード先のフォルダ名称>\"

# アップロードするファイル名(実行位置によって、相対ファイルパスを記載すること)
local_file_name = "HelloWorld.txt"

# アップロード先
upload_file_path = os.path.join(upload_path, local_file_name)

# 自身のAzure Storageに接続するためのインスタンスを作成する。
blob_service_client = BlobServiceClient.from_connection_string(connect_str)

# Azure Storageの指定コンテナに接続するブロブ(ファイル)のクライアントインスタンスを作成する。
blob_client = blob_service_client.get_blob_client(container=container_name, blob=local_file_name)

print("\nUploading to Azure Storage as blob:\n\t" + local_file_name)

# Azure Storageへのアップロード
with open(upload_file_path, "rb") as data:
    blob_client.upload_blob(data)

参考文献

Azure公式ドキュメント Pythonリファレンス BlobServiceClientClass
https://docs.microsoft.com/en-us/python/api/azure-storage-blob/azure.storage.blob.blobserviceclient?view=azure-python

5
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
3