2014-10-03 85 views
1

我想在Python中使用boto來循環和上傳文件到我的aws桶。我可以成功上傳到我的根存儲桶,但無法上傳到特定的前綴。這裏是剪斷我:Python博託上傳以前綴

conn = S3Connection(aws_access_key_id=key, aws_secret_access_key=secret) 
bucket = conn.get_bucket('mybucket') 
k = boto.s3.key.Key(bucket) 
k.key = u 
k.set_contents_from_filename(u) 

它必須是簡單的東西,我已經通過其他職位看了看已經無法想出解決辦法。

感謝

回答

1

你需要建立密鑰的名稱的完整路徑,然後你可以設置它的內容:

#Connect to aws 
conn = S3Connection(aws_access_key_id=key, aws_secret_access_key=secret) 
bucket = conn.get_bucket('mybucket') 

#Build path 
path = 'prefix' 
key_name = 'this_is_any.file' 
full_key_name = os.path.join(path, key_name) 

#Set and save in S3 
k = bucket.new_key(full_key_name) 
k.set_contents_from_filename(...)