如何使用 Python 访问 boto 中存储桶中文件夹中的文件?

我所能找到的就是这个,它列出了所有文件。上市成功。

我只想通过链接访问特定文件。该文件位于文件夹中。

例如,我想从以下网址下载:

s3://my_bucket/my_folder/my_next_folder/my_file.csv

无需遍历整个文件树。


幕布斯7119047
浏览 162回答 2
2回答

摇曳的蔷薇

你试过这个吗:import boto3import botocoreBUCKET_NAME = 'my-bucket' # replace with your bucket nameKEY = 'my_image_in_s3.jpg' # replace with your object keys3 = boto3.resource('s3')try:    s3.Bucket(BUCKET_NAME).download_file(KEY, 'my_local_image.jpg')except botocore.exceptions.ClientError as e:    if e.response['Error']['Code'] == "404":        print("The object does not exist.")    else:        raise

慕慕森

from boto.s3.key import Keyfrom boto.s3.connection import S3Connectionconn = S3Connection(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY)s3_url_split = s3_url.split('/')bucket_name = s3_url_split[2]dir_name = '/'.join(s3_url_split[3:-1])bucket = conn.get_bucket(bucket_name)file_name = s3_url_split[-1]k = Key(bucket)k.key = dir_name + "/" + file_namek.get_contents_to_filename(dst_path)我缺少的是密钥已经包含文件夹路径。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python