При запуске извлечения класса хранения
import boto3 s3 = boto3.resource('s3') key = s3.Object('bucket_name','key') print key.storage_class
возвращается None
По документации AWS: S3 возвращает заголовок x-amz-storage-class для всех объектов, кроме стандартного класса хранения. https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectGET.html
x-amz-storage-class
Я использую следующее для получения переменной класса хранилища:
import boto3 session = boto3.session.Session(profile_name='dev') s3_resource = session.resource('s3', region_name=region) obj_meta = s3_resource.Object(bucket, key_object) obj_storage_class = 'STANDARD' if obj_meta.storage_class is None else str(obj_meta.storage_class)
Мои эксперименты показывают, что Standard класс хранения возвращает значение None (как это было для вас).
Standard
None
Однако мне удалось получить действительные значения для других классов хранения, таких как STANDARD_IAи GLACIER.
STANDARD_IA
GLACIER