2017-05-23 16 views
0

以下のリンクは、S3コンテンツ全体をダウンロードする方法を示しています。ただし、サブフォルダの内容はどのように取得されますか。私のS3フォルダに次のエミュレート構造があるとします。python botoを使用してS3バケット内の特定のフォルダのみをダウンロードする

S3Folder/S1/FILE1.C

S3Folder/S1/file2.h

S3Folder/S1/file1.h

S3Folder/S2/FILE.EXE

S3Folder/S2/resource.data

S2フォルダのみに興味があるとします。バケットリストのキーをどのように分離するのですか?

local backup of an S3 content

conn = boto.connect_s3(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) 
bucket = conn.get_bucket(bucket_name) 

# go through the list of files 
bucket_list = bucket.list() 
for l in bucket_list: 
    keyString = str(l.key) 
    d = LOCAL_PATH + keyString 
    try: 
    l.get_contents_to_filename(d) 
    except OSError: 
    # check if dir exists 
    if not os.path.exists(d): 
     os.mkdir(d) 

答えて

0

あなたは、キー値での接頭辞を追加することにより、S3オブジェクトをダウンロードすることができます。

オブジェクトFYI

をダウンロードしている間だから、あなたの質問に応じて、あなただけの「/ S2」プレフィックスを追加する必要があります。ここで、私は希望s3 download object

をboto3使用は、複数のチェックthis

+0

については明らかではありません接頭辞S2を入力します。追加する必要のあるパラメータ 'key'に –

+0

を追加します。ドキュメントを読むことをお勧めします。 – tom

+0

私はS2サブフォルダのコンテンツだけを取得する必要があります。これまでのところ、私はバケツの中のすべてをつかむ –

関連する問題