2017-01-09 40 views
1

我是Boto的新手,在python中使用boto2.29.1S3 boto library:如何對桶中的密鑰執行HEAD請求

通過使用bucket.list()方法然後再遍歷鍵添加使用set_metadata方法

清單S3桶所有鍵一些用戶的元數據。但隨着API reference

定義,但使用bucket.get_key()返回的元數據

API參考獲取元數據表示,這樣做的關鍵HEAD請求獲得元數據不返回用戶的元數據。我怎樣才能做到這一點?

+0

我將不勝感激,如果有人還告訴如何獲得與特定用戶的元數據鍵,而不是讓所有的鍵然後過濾密鑰 –

+1

如果您是新客戶,我會推薦使用boto3。 ([docs for head_object](http://boto3.readthedocs.io/en/latest/reference/services/s3.html#S3.Client.head_object)) –

回答

0

Boto沒有直接請求(至少不在v2)。 獲取所有元數據的唯一方法是使用bucket.get_key()方法。

如果你只需要對一些關鍵的元數據,那麼你可以做這樣的事情:

for key in bucket.list(): 
    if want_metadata(key.name): 
     key_with_md = bucket.get_key(key.name) 
     metadata = key_with_md.get_metadata('smth') 
相關問題