栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

使用boto3检查s3中存储桶中是否存在密钥

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用boto3检查s3中存储桶中是否存在密钥

Boto
2的

boto.s3.key.Key
对象曾经有一种
exists
方法,该方法通过执行HEAD请求并查看结果来检查密钥是否在S3上存在,但似乎不再存在。您必须自己做:

import boto3import botocores3 = boto3.resource('s3')try:    s3.Object('my-bucket', 'dootdoot.jpg').load()except botocore.exceptions.ClientError as e:    if e.response['Error']['Code'] == "404":        # The object does not exist.        ...    else:        # Something else has gone wrong.        raiseelse:    # The object does exist.    ...

load()
对单个键执行HEAD请求,这是快速的,即使有问题的对象很大或存储桶中有很多对象也是如此。

当然,您可能正在检查对象是否存在,因为您打算使用它。如果是这种情况,您只需将

load()
和忘掉,然后直接执行a
get()
download_file()
,然后在那里处理错误情况。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/633641.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号