Cách đọc tệp s3 trong python
Amazon Simple Storage Service (Amazon S3) là bộ lưu trữ đối tượng thường được sử dụng cho các ứng dụng phân tích dữ liệu, học máy, trang web, v.v. Để bắt đầu làm việc theo chương trình với Amazon S3, bạn phải cài đặt AWS Software Development Kit (SDK). Bài viết này sẽ đề cập đến AWS SDK dành cho Python có tên là Boto3 Show
Boto3 là SDK Python dành cho Amazon Web Services (AWS) cho phép bạn quản lý các dịch vụ AWS theo cách có lập trình từ các ứng dụng và dịch vụ của bạn. Bạn có thể làm những việc tương tự như bạn đang làm trong Bảng điều khiển AWS của mình và thậm chí nhiều hơn thế, nhưng nhanh hơn, lặp lại và tự động. Sử dụng thư viện Boto3 với Amazon Simple Storage Service (S3) cho phép bạn dễ dàng tạo, cập nhật và xóa Bộ chứa S3, Đối tượng, Chính sách bộ chứa S3, v.v. khỏi các chương trình hoặc tập lệnh Python Mục lục
điều kiện tiên quyếtĐể bắt đầu tự động hóa các hoạt động của Amazon S3 và thực hiện lệnh gọi API đến dịch vụ Amazon S3, trước tiên bạn phải định cấu hình môi trường Python của mình Nói chung, đây là những gì bạn cần cài đặt
Làm cách nào để kết nối với S3 bằng Boto3?Thư viện Boto3 cung cấp cho bạn hai cách để truy cập API để quản lý dịch vụ AWS
Đây là cách bạn có thể khởi tạo ứng dụng khách Boto3 để bắt đầu làm việc với API Amazon S3
Đây là một ví dụ về việc sử dụng phương pháp 5
Ngay khi bạn khởi tạo ứng dụng khách Boto3 S3 hoặc tài nguyên trong mã của mình, bạn có thể bắt đầu quản lý dịch vụ Amazon S3 Làm cách nào để tạo bộ chứa S3 bằng Boto3?Để tạo Bộ chứa Amazon S3 bằng thư viện Boto3, bạn cần có ứng dụng khách create_bucket hoặc tài nguyên create_bucket Ghi chú. Mỗi Bộ chứa Amazon S3 phải có một tên duy nhất. Hơn nữa, tên này phải là duy nhất trên tất cả tài khoản AWS và khách hàng Tạo Bộ chứa S3 bằng ứng dụng khách Boto3Để tránh các trường hợp ngoại lệ khác nhau khi làm việc với dịch vụ Amazon S3, chúng tôi thực sự khuyên bạn nên xác định một Khu vực AWS cụ thể cho máy khách Boto3 và Cấu hình nhóm S3
Đây là một đầu ra ví dụ Tạo Bộ chứa S3 bằng tài nguyên Boto3Tương tự, bạn có thể sử dụng tài nguyên Boto3 để tạo bộ chứa Amazon S3
Đây là một đầu ra ví dụ Làm cách nào để liệt kê các Bộ chứa Amazon S3 bằng Boto3?Có hai cách liệt kê các Bộ chứa Amazon S3
Liệt kê các Bộ chứa S3 bằng ứng dụng khách Boto3Dưới đây là ví dụ về việc liệt kê các Nhóm S3 hiện có bằng ứng dụng khách S3 Đây là kết quả ví dụ. Liệt kê các Nhóm S3 sử dụng tài nguyên Boto3Dưới đây là ví dụ về việc liệt kê các Nhóm S3 hiện có bằng cách sử dụng tài nguyên S3
Đây là một đầu ra ví dụ Làm cách nào để xóa Bộ chứa Amazon S3 bằng Boto3?Có hai cách có thể xóa Amazon S3 Bucket sử dụng thư viện Boto3
Xóa Bộ chứa S3 bằng ứng dụng khách Boto3Dưới đây là ví dụ về cách xóa bộ chứa Amazon S3 bằng ứng dụng khách Boto3 Đây là kết quả ví dụ. Xóa Nhóm S3 bằng tài nguyên Boto3Dưới đây là ví dụ về cách xóa bộ chứa Amazon S3 bằng ứng dụng khách Boto3
Đây là một đầu ra ví dụ Xóa Bộ chứa S3 không trống bằng Boto3Để xóa Bộ chứa S3 bằng thư viện Boto3, bạn phải dọn sạch Bộ chứa S3. Nếu không, thư viện Boto3 sẽ tăng ngoại lệ 6. Thao tác dọn dẹp yêu cầu xóa tất cả các đối tượng Bộ chứa S3 và các phiên bản của chúngLiên kết được tài trợ 1Đây là một kết quả thực hiện Làm cách nào để tải tệp lên Bộ chứa S3 bằng Boto3?Thư viện Boto3 có hai cách để tải tệp và đối tượng lên Bộ chứa S3
Tải tệp lên Bộ chứa S3 bằng Boto3Phương thức 7 yêu cầu các đối số sau
Dưới đây là ví dụ về cách tải tệp lên Bộ chứa S3 7Chúng tôi đang sử dụng mô-đun 2 để lấy đường dẫn vị trí tập lệnh và lưu nó vào biến 3. Sau đó, chúng tôi tạo ra cácupload_files() chịu trách nhiệm gọi ứng dụng khách S3 và tải tệp lên. Tải nhiều tệp lên bộ chứa S3Để tải nhiều tệp lên bộ chứa Amazon S3, bạn có thể sử dụng phương pháp 4 từ mô-đun 5. Phương thức này trả về tất cả các đường dẫn tệp khớp với một mẫu nhất định dưới dạng danh sách Python. Bạn có thể sử dụng toàn cầu để chọn một số tệp nhất định theo mẫu tìm kiếm bằng cách sử dụng ký tự đại diện 0Đây là kết quả ví dụ. Liên kết được tài trợTải dữ liệu đối tượng tệp đã tạo lên Bộ chứa S3 bằng Boto3Nếu cần tải dữ liệu đối tượng tệp lên Bộ chứa Amazon S3, bạn có thể sử dụng phương thức 6 method . Phương pháp này có thể hữu ích khi bạn cần tạo nội dung tệp trong bộ nhớ (ví dụ) rồi tải nó lên S3 mà không lưu nó trên hệ thống tệp. Ghi chú phương thức 6 method yêu cầu mở tệp ở chế độ nhị phân. Dưới đây là ví dụ về cách tải tệp đã tạo lên Bộ chứa S3 1Đây là một đầu ra ví dụ Bật Mã hóa phía máy chủ S3 (SSE-S3) cho các đối tượng đã tải lênBạn có thể sử dụng mã hóa S3 Server-Side Encryption (SSE-S3) để bảo vệ dữ liệu của mình trong Amazon S3. Chúng tôi sẽ sử dụng mã hóa phía máy chủ, sử dụng thuật toán AES-256. 2Đây là một kết quả thực thi Liên kết được tài trợLàm cách nào để nhận danh sách tệp từ Bộ chứa S3?Phương pháp thuận tiện nhất để lấy danh sách tệp từ Bộ chứa S3 bằng Boto3 là sử dụng Bộ chứa S3. các đối tượng. phương thức tất cả () 3Đây là một đầu ra ví dụ Kết quả lọc của thao tác danh sách S3 bằng Boto3Nếu bạn cần lấy danh sách các đối tượng S3 có khóa bắt đầu từ một tiền tố cụ thể, bạn có thể sử dụng phương thức 8 để thực hiện việc này 4Đây là kết quả đầu ra. Thay vì nhận tất cả các tệp, chúng tôi chỉ nhận các tệp có khóa bắt đầu từ tiền tố 9Làm cách nào để tải xuống tệp từ S3 Bucket?Bạn có thể sử dụng phương thức 0 để tải đối tượng S3 xuống hệ thống tệp cục bộ của mình 5Đây là một ví dụ đầu ra Làm cách nào để đọc tệp từ nhóm S3 vào bộ nhớ? 6Đây là một đầu ra ví dụ Làm cách nào để xóa các đối tượng S3 bằng Boto3?Để xóa một đối tượng khỏi Amazon S3 Bucket, bạn cần gọi phương thức 1 của thể hiện đối tượng đại diện cho đối tượng đóLiên kết được tài trợ 7Đây là một ví dụ thực thi Làm cách nào để đổi tên đối tượng tệp S3 bằng Boto3?Không có lệnh gọi API nào để đổi tên đối tượng S3. Vì vậy, để đổi tên một đối tượng S3, bạn cần sao chép nó vào một đối tượng mới với tên mới và sau đó xóa đối tượng cũ 8Đây là một kết quả thực hiện Liên kết được tài trợLàm cách nào để sao chép các đối tượng tệp trong bộ chứa S3 bằng Boto3?Để sao chép các đối tượng tệp giữa các bộ chứa S3 bằng Boto3, bạn có thể sử dụng phương thức copy_from() Chúng ta có thể điều chỉnh ví dụ trước để hỗ trợ Nhóm S3 mới làm đích 9Các copy_s3_object() sẽ sao chép đối tượng S3 trong cùng một Nhóm S3 hoặc giữa các Nhóm S3.Làm cách nào để tạo Chính sách nhóm S3 bằng Boto3?Để chỉ định các yêu cầu, điều kiện hoặc hạn chế truy cập Bộ chứa Amazon S3, bạn phải sử dụng Chính sách bộ chứa Amazon S3. Đây là một ví dụ về Chính sách bộ chứa Amazon S3 để thực thi kết nối HTTPS (TLS) với bộ chứa S3Hãy sử dụng thư viện Boto3 để thiết lập chính sách này cho bộ chứa S3 0Đây là một đầu ra ví dụ Làm cách nào để xóa Chính sách nhóm S3 bằng Boto3?Để xóa Chính sách nhóm S3, bạn có thể sử dụng Phương pháp 2 của máy khách S3. 1Đây là một kết quả thực thi Làm cách nào để tạo URL do S3 chỉ định?Nếu bạn cần chia sẻ tệp từ Bộ chứa Amazon S3 không công khai mà không cấp quyền truy cập API AWS cho người dùng cuối, bạn có thể tạo một URL được ký trước cho Đối tượng bộ chứa Liên kết được tài trợ 2Phương thức 3 của máy khách S3 chấp nhận các tham số sau
Đây là một đầu ra ví dụ Làm cách nào để bật phiên bản Bộ chứa S3 bằng Boto3?Phiên bản Bộ chứa S3 cho phép bạn theo dõi các phiên bản của đối tượng Bộ chứa S3 theo thời gian. Ngoài ra, nó bảo vệ chống lại việc vô tình xóa đối tượng. Boto3 sẽ truy xuất phiên bản mới nhất của đối tượng đã được phiên bản theo yêu cầu. Khi một phiên bản mới của một đối tượng được thêm vào, đối tượng đó chiếm dung lượng lưu trữ của các phiên bản được cộng lại với nhau; . e. , tệp 2 MB với 5 phiên bản sẽ chiếm 10 MB dung lượng trong bộ lưu trữĐể kích hoạt lập phiên bản cho Bộ chứa S3, bạn cần sử dụng phương pháp 9 3Đây là một kết quả thực thi Bản tóm tắtTrong bài viết này, chúng tôi đã đề cập đến các ví dụ về cách sử dụng Boto3 để quản lý dịch vụ Amazon S3, bao gồm Bộ chứa S3, Đối tượng, Chính sách bộ chứa, Lập phiên bản và URL được chỉ định Nếu bạn muốn tìm hiểu thêm về cách sử dụng thư viện Boto3, đặc biệt là khi kết hợp với AWS Lambda, chúng tôi thực sự khuyên bạn nên xem một trong những khóa học được xếp hạng hàng đầu của Udemy về chủ đề này – Tự động hóa AWS với Boto3 của Hàm Python và Lambda Tôi có thể đọc tệp S3 mà không cần tải xuống không?Đọc các đối tượng mà không cần tải chúng xuống
. using the S3 resource method put(), as demonstrated in the example below (Gist).
Lambda có thể đọc từ S3 không?Hàm Lambda truy xuất tên bộ chứa S3 nguồn và tên khóa của đối tượng đã tải lên từ thông số sự kiện mà nó nhận được . Hàm sử dụng API getObject của Amazon S3 để truy xuất loại nội dung của đối tượng.
S3 trong Python là gì?Một trong những thành phần cốt lõi của nó là S3, dịch vụ lưu trữ đối tượng do AWS cung cấp . Với tính khả dụng và độ bền ấn tượng, nó đã trở thành cách tiêu chuẩn để lưu trữ video, hình ảnh và dữ liệu. Bạn có thể kết hợp S3 với các dịch vụ khác để xây dựng các ứng dụng có khả năng mở rộng vô hạn. Boto3 là tên của Python SDK cho AWS. |