Azure Storage Account 是利用 blob 來儲存資料的空間,而 blob 則是一種可以儲存大量文字或二進位資料的物件,資料可以是各種影音、文件或壓縮檔案。在申請建立資源時,資源名稱為 Storage Account (儲存體帳戶),但在相關說明文件是在 Azure Blob 的說明文件之中。(謎之聲:用Imgur
的 API 也可以啊~~)
Python
套件pip3.7 install azure-storage-blob
取得串接字串才能用 azure blob python
套件存取 blob。
存取金鑰
顯示金鑰
連接字串
container client
,並設定權限。import os
from azure.storage.blob import BlobServiceClient, BlobClient, ContainerClient
import json
import requests
from azure.storage.blob import AccessPolicy, ContainerSasPermissions
# 這邊就是填剛剛複製的連接字串
connect_str = 'Your connect string'
blob_service_client = BlobServiceClient.from_connection_string(connect_str)
# 自己命名 container 名稱,建立 container client
container_client = blob_service_client.create_container(<container name>)
# 設定 blob 讀寫權限,方便之後使用檔案的 URL
access_policy = AccessPolicy(permission=ContainerSasPermissions(read=True, write=True))
identifiers = {'both': access_policy}
container_client.set_container_access_policy(identifiers, public_access='blob')
with open('your.jpg', "rb") as data:
blob_client.upload_blob(data)
data.close()
# 印出檔案的 URL
print(blob_client.url)
在之後為了方便起見,可以把上述程式碼做成 function ,整合到 chatbot。接下來跟電腦視覺相關的服務,都可以搭配 blob 的功能來使用。下一篇,我們來看圖說故事。