gpt4 book ai didi

python - 使用 Python boto 从 S3 获取文件元数据

转载 作者:太空宇宙 更新时间:2023-11-04 09:44:39 28 4
gpt4 key购买 nike

我在 AWS S3 中有一些二进制文件,我需要获取文件元数据,例如创建时间修改时间 并使用 Python Boto API 访问时间?

我们尝试将文件复制到 EC2 实例,从那里我们使用 os 模块 stat 方法来获取时间。我希望当我们将文件复制到 EC2 实例时,这些细节会发生变化。

我尝试的示例代码:

stat = os.stat(inputFile)
createdTime = datetime.fromtimestamp(stat[9]).strftime("%A, %B %d, %Y %I:%M:%S")

如何直接从S3获取这些详细信息?

最佳答案

Boto3 有一个函数 S3.Client.head_object :

The HEAD operation retrieves metadata from an object without returningthe object itself. This operation is useful if you're only interestedin an object's metadata.

遍历存储桶中的文件并请求元数据的示例代码:

#! /usr/bin/python3

import boto3
s3client = boto3.client('s3')

paginator = s3client.get_paginator('list_objects_v2')
page_iterator = paginator.paginate(Bucket='MyBucketName')
for bucket in page_iterator:
for file in bucket['Contents']:
print(file['Key'])
try:
metadata = s3client.head_object(Bucket='MyBucketName', Key=file['Key'])
print(metadata)
except:
print("Failed {}".format(file['Key']))

关于python - 使用 Python boto 从 S3 获取文件元数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50271946/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com