Итерация по папке S3 и сравнение изображений внутри этой папки? - PullRequest
0 голосов
/ 17 апреля 2019

Здравствуйте, у меня есть корзина в s3, в которой находится папка с изображениями, которые мне нужно перебрать. При повторении каждого изображения мне нужно сравнивать повторное изображение с другим, чтобы отобразить сходства.

Как бы я перебрал файлы в папке корзины? Я уже написал метод для сравнения изображений, которые мне просто нужно перебрать в папке.

Ответы [ 2 ]

1 голос
/ 17 апреля 2019

Boto3 является официальным AWS SDK для Python. Вы хотели бы сделать что-то вроде этого:

import boto3
s3 = boto3.resource(service_name='s3', aws_access_key_id=XXXXXXXXXXX, aws_secret_access_key=XXXXXXXXX)
bucket = s3.Bucket(BUCKET_NAME_AS_STRING)
for obj in bucket.objects.all():
    #if you need to download image for comparison
    bucket.download_file(obj.key, LOCAL_FILE_PATH_DESTINATION)

и тогда вы можете запустить сравнение изображений.

0 голосов
/ 17 апреля 2019

s3fs - хорошая библиотека, которая позволяет вам легко это делать

Вы создаете объект S3FileSystem с вашими параметрами, а затем можете вызывать ls () или glob () с путем s3://<bucket>/<key> и перебирать результаты. Для более конкретных примеров вы можете посмотреть их документацию Вот базовый пример:

>>> import s3fs
>>> fs = s3fs.S3FileSystem(anon=True)
>>> fs.ls('my-bucket')
['my-file.txt', 'another-file.txt']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...