编程语言
首页 > 编程语言> > Python-s3通过boto连接到“文件夹”

Python-s3通过boto连接到“文件夹”

作者:互联网

我正在尝试使用boto和python将文件上传到特定位置.我正在使用某种东西来达到此效果:

from boto.s3.connection import S3Connection
from boto.s3.key import Key


conn = S3Connection(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY)
bucket = conn.get_bucket('the_bucket_name')
for key in bucket: 
    print key.name

这是窍门.我已将凭证设置为存储桶中的“文件夹”.据此-Amazon S3 boto – how to create a folder?我知道s3中实际上没有文件夹,而是诸如“ foo / bar / my_key.txt”之类的键.当我尝试执行get_bucket()时

boto.exception.S3ResponseError:S3ResponseError:403禁止

因为我实际上没有基础存储桶的凭证,而是存储桶密钥的子集. my_bucket / the_area_I_have_permission / *

有谁知道我如何在连接步骤中通过我可以访问的存储桶中的特定“区域”?或我可以用来访问my_bucket / the_area_I_have_permission / *的替代方法?

解决方法:

这是否有帮助:

bucket = conn.get_bucket('the_bucket_name',validate=False)

key = bucket.get_key("ur_key_name")
if key is not None:
    print  key.get_contents_as_string()

keys = bucket.list(prefix='the_area_I_have_permission')
for key in keys:
    print key.name

标签:amazon-s3,boto,python
来源: https://codeday.me/bug/20191123/2064704.html