Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带前缀的Python boto上载_Python_Amazon S3_Boto - Fatal编程技术网

带前缀的Python boto上载

带前缀的Python boto上载,python,amazon-s3,boto,Python,Amazon S3,Boto,我正在尝试使用python中的boto循环并将文件上载到我的aws存储桶。我可以成功上传到我的根bucket,但无法上传到特定前缀。这是我的剪报: 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

我正在尝试使用python中的boto循环并将文件上载到我的aws存储桶。我可以成功上传到我的根bucket,但无法上传到特定前缀。这是我的剪报:

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)
这一定很简单,我已经看过其他的帖子,但一直无法弄明白这一点


谢谢

您需要构建密钥名称的完整路径,然后可以设置其内容:

#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(...)