如何像Openstack Swift一样,在Python(Boto-lib)中获取AmazonS3存储桶的元数据/头?
我想获取AmazonS3存储桶的元数据/头列表 我可以在OpenStack Swift存储中获取元数据,如下-> 请求元数据的curl命令:如何像Openstack Swift一样,在Python(Boto-lib)中获取AmazonS3存储桶的元数据/头?,python,amazon-web-services,amazon-s3,boto,openstack-swift,Python,Amazon Web Services,Amazon S3,Boto,Openstack Swift,我想获取AmazonS3存储桶的元数据/头列表 我可以在OpenStack Swift存储中获取元数据,如下-> 请求元数据的curl命令: curl -i http://localhost:8080/v1/AUTH_test/container1 -X HEAD -H "X-Auth-Token: AUTH_tk6194fghrt" 对上述curl命令的响应: HTTP/1.1 204 No Content Content-Length: 0 X-Container-Object-Count
curl -i http://localhost:8080/v1/AUTH_test/container1 -X HEAD -H "X-Auth-Token: AUTH_tk6194fghrt"
对上述curl命令的响应:
HTTP/1.1 204 No Content
Content-Length: 0
X-Container-Object-Count: 6
Accept-Ranges: bytes
X-Trans-Id: tx0ff9f8541e2c4e019dea1-0053eb48a7
Date: Wed, 13 Aug 2014 11:14:47 GMT
X-Container-Meta-Century: Nineteenthsssssssssssss
X-Timestamp: 1399987571.97634
X-Container-Meta-Author: Mustafa
X-Container-Bytes-Used: 3978833
Content-Type: text/plain; charset=utf-8
X-Trans-Id: tx1c2734f1e4ca4f3e835da-0053eb497d
在openstack swift中,我可以使用python swiftclient API获取swift容器(bucket)的上述元数据。我想为AmazonS3 bucket做同样的事情。那么,如何使用Python获取AmazonS3 bucket的元数据呢?(我正在使用boto库)
可能吗,还是我在“吹毛求疵” 更新:
我正在尝试获取bucket的元数据,而不是bucket的键。您可以尝试以下boto代码片段:
from boto.s3.connection import S3Connection
conn = S3Connection('<aws access key>', '<aws secret key>')
mybucket = conn.get_bucket('mybucket')
for key in mybucket:
key = mybucket.get_key(key.name)
print key.name
print key.get_metadata('revision')
希望您能在响应头中看到所需的一些元数据。我正在使用这些代码从存储桶的键中获取元数据。但我在找水桶,不是我看到的钥匙。我对水桶本身不太确定。我已经用一些你可以尝试的东西更新了答案。
resp = conn.make_request("HEAD", mybucket)
print resp.getheaders()