Làm cách nào để tải xuống các tệp từ bộ lưu trữ blob Azure trong python?
Lưu trữ Azure Blob là giải pháp lưu trữ đối tượng của Microsoft cho đám mây. Lưu trữ blob được tối ưu hóa để lưu trữ lượng lớn dữ liệu phi cấu trúc, chẳng hạn như dữ liệu văn bản hoặc nhị phân Show
Lưu trữ Blob là lý tưởng cho
Mã nguồn. Gói (PyPI). Tài liệu tham khảo API. tài liệu sản phẩm. Mẫu Bắt đầuđiều kiện tiên quyếtCài đặt góiCài đặt thư viện máy khách Azure Storage Blobs cho Python bằng pip pip install azure-storage-blob Tạo một tài khoản lưu trữNếu muốn tạo tài khoản lưu trữ mới, bạn có thể sử dụng Azure Portal, Azure PowerShell hoặc Azure CLI # Create a new resource group to hold the storage account - # if using an existing resource group, skip this step az group create --name my-resource-group --location westus2 # Create the storage account az storage account create -n my-storage-account-name -g my-resource-group Tạo khách hàngThư viện máy khách Azure Storage Blobs dành cho Python cho phép bạn tương tác với ba loại tài nguyên. chính tài khoản lưu trữ, bộ chứa lưu trữ blob và blobs. Tương tác với các tài nguyên này bắt đầu bằng một phiên bản của máy khách. Để tạo đối tượng khách hàng, bạn sẽ cần URL tài khoản dịch vụ blob của tài khoản lưu trữ và thông tin xác thực cho phép bạn truy cập vào tài khoản lưu trữ from azure.storage.blob import BlobServiceClient service = BlobServiceClient(account_url="https://.blob.core.windows.net/", credential=credential) Tra cứu URL tài khoảnBạn có thể tìm thấy URL dịch vụ blob của tài khoản lưu trữ bằng Azure Portal, Azure PowerShell hoặc Azure CLI # Get the blob service account url for the storage account az storage account show -n my-storage-account-name -g my-resource-group --query "primaryEndpoints.blob" Các loại thông tin đăng nhậpTham số from azure.storage.blob import BlobServiceClient service = BlobServiceClient(account_url="https://.blob.core.windows.net/", credential=credential)0 có thể được cung cấp ở một số dạng khác nhau, tùy thuộc vào loại ủy quyền mà bạn muốn sử dụng
Tạo ứng dụng khách từ chuỗi kết nốiTùy thuộc vào trường hợp sử dụng và phương thức ủy quyền của bạn, bạn có thể muốn khởi tạo phiên bản ứng dụng khách bằng chuỗi kết nối lưu trữ thay vì cung cấp riêng URL tài khoản và thông tin xác thực. Để thực hiện việc này, hãy chuyển chuỗi kết nối lưu trữ tới phương thức lớp from azure.storage.blob import BlobServiceClient service = BlobServiceClient(account_url="https://.blob.core.windows.net/", credential=credential)4 của máy khách # Create a new resource group to hold the storage account - # if using an existing resource group, skip this step az group create --name my-resource-group --location westus2 # Create the storage account az storage account create -n my-storage-account-name -g my-resource-group3 Bạn có thể tìm thấy chuỗi kết nối với tài khoản lưu trữ của mình trong Cổng thông tin Azure trong phần "Khóa truy cập" hoặc bằng cách chạy lệnh CLI sau # Create a new resource group to hold the storage account - # if using an existing resource group, skip this step az group create --name my-resource-group --location westus2 # Create the storage account az storage account create -n my-storage-account-name -g my-resource-group4 Ý chínhCác thành phần sau tạo nên Dịch vụ Azure Blob
Thư viện máy khách Azure Storage Blobs dành cho Python cho phép bạn tương tác với từng thành phần này thông qua việc sử dụng một đối tượng máy khách chuyên dụng khách hàngBốn ứng dụng khách khác nhau được cung cấp để tương tác với các thành phần khác nhau của Dịch vụ Blob
Máy khách không đồng bộThư viện này bao gồm một API không đồng bộ hoàn chỉnh được hỗ trợ trên Python 3. 5+. Để sử dụng nó, trước tiên bạn phải cài đặt một phương tiện truyền tải không đồng bộ, chẳng hạn như aiohttp. Xem tài liệu Azure-core để biết thêm thông tin Các ứng dụng khách và thông tin xác thực không đồng bộ sẽ bị đóng khi chúng không còn cần thiết nữa. Các đối tượng này là trình quản lý bối cảnh không đồng bộ và xác định các phương thức # Get the blob service account url for the storage account az storage account show -n my-storage-account-name -g my-resource-group --query "primaryEndpoints.blob"0 không đồng bộ Các loại đốm màuKhi bạn đã khởi tạo Máy khách, bạn có thể chọn từ các loại đốm màu khác nhau
ví dụCác phần sau đây cung cấp một số đoạn mã bao gồm một số tác vụ Storage Blob phổ biến nhất, bao gồm Lưu ý rằng vùng chứa phải được tạo trước để tải lên hoặc tải xuống blob Tạo một thùng chứaTạo vùng chứa từ nơi bạn có thể tải lên hoặc tải xuống các đốm màu # Create a new resource group to hold the storage account - # if using an existing resource group, skip this step az group create --name my-resource-group --location westus2 # Create the storage account az storage account create -n my-storage-account-name -g my-resource-group0 Sử dụng ứng dụng khách không đồng bộ để tải lên một đốm màu # Create a new resource group to hold the storage account - # if using an existing resource group, skip this step az group create --name my-resource-group --location westus2 # Create the storage account az storage account create -n my-storage-account-name -g my-resource-group1 Đang tải lên một đốm màuTải một đốm màu lên vùng chứa của bạn # Create a new resource group to hold the storage account - # if using an existing resource group, skip this step az group create --name my-resource-group --location westus2 # Create the storage account az storage account create -n my-storage-account-name -g my-resource-group2 Sử dụng ứng dụng khách không đồng bộ để tải lên một đốm màu # Create a new resource group to hold the storage account - # if using an existing resource group, skip this step az group create --name my-resource-group --location westus2 # Create the storage account az storage account create -n my-storage-account-name -g my-resource-group3 Đang tải xuống một đốm màuTải xuống một đốm màu từ vùng chứa của bạn # Create a new resource group to hold the storage account - # if using an existing resource group, skip this step az group create --name my-resource-group --location westus2 # Create the storage account az storage account create -n my-storage-account-name -g my-resource-group4 Tải xuống một đốm màu không đồng bộ # Create a new resource group to hold the storage account - # if using an existing resource group, skip this step az group create --name my-resource-group --location westus2 # Create the storage account az storage account create -n my-storage-account-name -g my-resource-group5 liệt kê các đốm màuLiệt kê các đốm màu trong vùng chứa của bạn # Create a new resource group to hold the storage account - # if using an existing resource group, skip this step az group create --name my-resource-group --location westus2 # Create the storage account az storage account create -n my-storage-account-name -g my-resource-group6 Liệt kê các đốm màu không đồng bộ # Create a new resource group to hold the storage account - # if using an existing resource group, skip this step az group create --name my-resource-group --location westus2 # Create the storage account az storage account create -n my-storage-account-name -g my-resource-group7 Cấu hình tùy chọnCác đối số từ khóa tùy chọn có thể được chuyển vào ở cấp độ máy khách và mỗi hoạt động Thử lại cấu hình Chính sáchSử dụng các đối số từ khóa sau khi khởi tạo ứng dụng khách để định cấu hình chính sách thử lại
cấu hình mã hóaSử dụng các đối số từ khóa sau khi khởi tạo ứng dụng khách để định cấu hình mã hóa
Cấu hình máy khách / mỗi hoạt động khácCác đối số từ khóa cấu hình tùy chọn khác có thể được chỉ định trên máy khách hoặc trên mỗi thao tác Đối số từ khóa khách hàng
Đối số từ khóa cho mỗi thao tác
Xử lý sự cốChungMáy khách Storage Blob đưa ra các ngoại lệ được xác định trong Azure Core Danh sách này có thể được sử dụng để tham khảo để bắt các ngoại lệ bị ném. Để lấy mã lỗi cụ thể của ngoại lệ, hãy sử dụng thuộc tính from azure.identity import DefaultAzureCredential from azure.storage.blob import BlobServiceClient token_credential = DefaultAzureCredential() blob_service_client = BlobServiceClient( account_url="https://.blob.core.windows.net", credential=token_credential )0, i. đ, from azure.identity import DefaultAzureCredential from azure.storage.blob import BlobServiceClient token_credential = DefaultAzureCredential() blob_service_client = BlobServiceClient( account_url="https://.blob.core.windows.net", credential=token_credential )1 ghi nhật kýThư viện này sử dụng thư viện ghi nhật ký tiêu chuẩn để ghi nhật ký. Thông tin cơ bản về phiên HTTP (URL, tiêu đề, v.v. ) được ghi ở mức INFO Ghi nhật ký mức GỠ LỖI chi tiết, bao gồm nội dung yêu cầu/phản hồi và tiêu đề chưa được chỉnh sửa, có thể được bật trên máy khách với đối số from azure.identity import DefaultAzureCredential from azure.storage.blob import BlobServiceClient token_credential = DefaultAzureCredential() blob_service_client = BlobServiceClient( account_url="https://.blob.core.windows.net", credential=token_credential )2 # Create a new resource group to hold the storage account - # if using an existing resource group, skip this step az group create --name my-resource-group --location westus2 # Create the storage account az storage account create -n my-storage-account-name -g my-resource-group8 Tương tự, from azure.identity import DefaultAzureCredential from azure.storage.blob import BlobServiceClient token_credential = DefaultAzureCredential() blob_service_client = BlobServiceClient( account_url="https://.blob.core.windows.net", credential=token_credential )2 có thể bật ghi nhật ký chi tiết cho một thao tác, ngay cả khi nó không được bật cho máy khách # Create a new resource group to hold the storage account - # if using an existing resource group, skip this step az group create --name my-resource-group --location westus2 # Create the storage account az storage account create -n my-storage-account-name -g my-resource-group9 Bước tiếp theoThêm mã mẫuBắt đầu với các mẫu Blob của chúng tôi Một số mẫu SDK Python của Storage Blobs có sẵn cho bạn trong kho lưu trữ GitHub của SDK. Các mẫu này cung cấp mã ví dụ cho các tình huống bổ sung thường gặp khi làm việc với Storage Blobs
tài liệu bổ sungĐể biết thêm tài liệu mở rộng về lưu trữ Azure Blob, hãy xem tài liệu lưu trữ Azure Blob trên tài liệu. Microsoft. com Đóng gópDự án này hoan nghênh những đóng góp và đề xuất. Hầu hết các đóng góp đều yêu cầu bạn đồng ý với Thỏa thuận cấp phép cộng tác viên (CLA) tuyên bố rằng bạn có quyền và thực sự làm như vậy, cấp cho chúng tôi quyền sử dụng đóng góp của bạn. Để biết chi tiết, hãy truy cập https. //cla. Microsoft. com Khi bạn gửi yêu cầu kéo, CLA-bot sẽ tự động xác định xem bạn có cần cung cấp CLA và trang trí PR một cách thích hợp hay không (e. g. , nhãn, nhận xét). Chỉ cần làm theo các hướng dẫn được cung cấp bởi bot. Bạn sẽ chỉ cần thực hiện việc này một lần trên tất cả các kho sử dụng CLA của chúng tôi Dự án này đã áp dụng Bộ quy tắc ứng xử mã nguồn mở của Microsoft. Để biết thêm thông tin, hãy xem Câu hỏi thường gặp về Quy tắc Ứng xử hoặc liên hệ với opencode@microsoft. com với bất kỳ câu hỏi hoặc ý kiến thêm |