Làm cách nào để tải xuống một thư mục từ bộ lưu trữ blob azure bằng python?
Lệnh ghép ngắn Get-AzureStorageBlobContent tải xuống blob lưu trữ được chỉ định. Nếu tên blob không hợp lệ cho máy tính cục bộ, lệnh ghép ngắn này sẽ tự động giải quyết nó nếu có thể Show
Chúng ta nên sử dụng lệnh này Get-AzureStorageBlobContent để tải xuống các đốm lưu trữ Azure. Tải xuống cục bộ tất cả các tệp blobs từ vùng chứa Azure bằng python. 2 Tải lên, tải xuống và quản lý các đốm màu, tệp, hàng đợi và bảng Azure, cũng như các thực thể Azure Cosmos DB và Azure Data Lake Storage. Dễ dàng truy cập các đĩa máy ảo và làm việc với Azure Resource Manager hoặc tài khoản lưu trữ cổ điển Get-AzureStorageBlobContent -Container $container_name -Blob $blob. Tên -Destination $destination_path -Context $storage_account Bây giờ, bạn có thể kiểm tra đường dẫn đích. Bạn sẽ thấy nội dung BLOB đang được tải xuống tải blob lưu trữ az. Tải một đốm màu xuống một đường dẫn tệp, với thông báo tiến trình và khối tự động. az lưu trữ blob tải xuống hàng loạt. Tải xuống các đốm màu từ vùng chứa blob theo cách đệ quy. blob lưu trữ az tồn tại. Kiểm tra sự tồn tại của đốm màu trong vùng chứa. az lưu trữ blob tạo-sas. Tạo chữ ký truy cập được chia sẻ cho blob Tải xuống tệp từ Azure Blob Storage Trong phần này, chúng ta sẽ tải xuống một tệp được lưu trữ trong bộ lưu trữ Azure blob bằng phương thức DownloadToStreamAsync. Chúng tôi đã thêm liên kết tải xuống trên 'ShowAllBlobs' Xem liên kết mà chúng tôi đang tạo có blobName mà chúng tôi sẽ chuyển đến Tải xuống hành động Tải xuống tệp nhanh/song song từ Azure Blob Storage bằng Python. Chương trình sau sử dụng lớp ThreadPool trong Python để tải xuống các tệp song song từ bộ lưu trữ Azure. Điều này tăng tốc đáng kể quá trình tải xuống của bạn nếu bạn có băng thông tốt. Chương trình hiện đang sử dụng 10 luồng, nhưng bạn có thể tăng nó lên nếu muốn tải xuống nhanh hơn Xem, tải xuống và chạy mã mẫu cũng như ứng dụng cho Azure Storage. Khám phá các mẫu bắt đầu cho đốm màu, hàng đợi, bảng và tệp bằng cách sử dụng thư viện máy khách lưu trữ Python Để tải xuống dữ liệu từ một tệp, hãy sử dụng get_file_to_path, get_file_to_stream, get_file_to_bytes hoặc get_file_to_text. Chúng là các phương thức cấp cao thực hiện phân đoạn cần thiết khi kích thước của dữ liệu vượt quá 64 MB Để tải xuống dữ liệu từ blob, hãy sử dụng get_blob_to_path, get_blob_to_file, get_blob_to_bytes hoặc get_blob_to_text. Chúng là các phương thức cấp cao thực hiện phân đoạn cần thiết khi kích thước của dữ liệu vượt quá 64 MB 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 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 thể hiện của một. Để 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 PowerShell hoặ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" 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 để 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 hoạt động
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 Làm cách nào để tải xuống thư mục từ bộ lưu trữ blob Azure bằng Python?Giới thiệu . Tìm kiếm tài khoản lưu trữ trong Azure Portal Nhấn New để tạo tài khoản lưu trữ mới Điền vào tất cả các chi tiết Sau khi tạo thành công tài khoản lưu trữ của bạn, hãy mở tài khoản lưu trữ của bạn và nhấp vào Khóa truy cập từ ngăn điều hướng bên trái để nhận thông tin đăng nhập tài khoản lưu trữ của bạn Làm cách nào để đọc dữ liệu blob trong Python?Đọc dữ liệu BLOB bằng Python . Đầu tiên, soạn một câu lệnh SELECT truy xuất ảnh của một tác giả cụ thể Thứ hai, lấy cấu hình cơ sở dữ liệu bằng cách gọi hàm read_db_config() Thứ ba, kết nối với cơ sở dữ liệu, khởi tạo con trỏ và thực hiện truy vấn. . Cuối cùng, đóng con trỏ và kết nối cơ sở dữ liệu |