Python - получить AWS ключ ведра из пути - PullRequest
0 голосов
/ 17 июня 2020

Учитывая, что у меня есть что-то вроде этого:

"s3://folder1/folder2/folder3/folder4/folder4.5/folder4.6/folder5/folder6/folder7/file_name.csv"

Как мне разобрать это так, чтобы я получил Bucket, а затем Key как все, за вычетом последнего / с именем файла?

Я пытаюсь получить путь, чтобы я мог перечислить все файлы в пути.

1 Ответ

1 голос
/ 17 июня 2020

Один из способов - использовать простые split и join combo:

s3_path = "s3://folder1/folder2/folder3/folder4/folder4.5/folder4.6/folder5/folder6/folder7/file_name.csv"

s3_path_split = s3_path.split('/')

bucket_name = s3_path_split[2]

# 'folder1'

key_name = '/'.join(s3_path_split[3:])

# 'folder2/folder3/folder4/folder4.5/folder4.6/folder5/folder6/folder7/file_name.csv'

key_name_without_file = '/'.join(s3_path_split[3:-1])

# folder2/folder3/folder4/folder4.5/folder4.6/folder5/folder6/folder7'

...