Подключение к S3 с помощью библиотеки boto3
В этой инструкции описано, как подключиться к объектному хранилищу S3 в Jupyter Notebook с помощью библиотеки boto3
. Для подключения к объектному хранилищу вы также можете использовать коннектор S3.
Примечание
Старайтесь не использовать хранилище S3 в режиме FUSE
Чтобы настроить подключение к S3 из кода ноутбука:
-
Создайте секреты
token
с идентификатором иkey_value
с секретной частью статического ключа доступа для сервисного аккаунта. -
Откройте проект DataSphere:
-
Выберите нужный проект в своем сообществе или на главной странице
DataSphere во вкладке Недавние проекты. - Нажмите кнопку Открыть проект в JupyterLab и дождитесь окончания загрузки.
- Откройте вкладку с ноутбуком.
-
-
Импортируйте библиотеки:
import boto3 import os from os import path
-
Введите имя своего бакета в хранилище:
bucket_name = '<имя_бакета>'
-
Установите подключение:
session = boto3.session.Session() ENDPOINT = "https://storage.yandexcloud.net" session = boto3.Session( aws_access_key_id=(os.environ['token']), aws_secret_access_key=(os.environ['key_value']), region_name="ru-central1", ) s3 = session.client( "s3", endpoint_url=ENDPOINT)
-
Введите имя бакета и получите список объектов в нем:
for key in s3.list_objects(Bucket='<имя_бакета>')['Contents']: print(key['Key'])