- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
使用如下代码片段,我们可以捕获 AWS 异常:
from aws_utils import make_session
session = make_session()
cf = session.resource("iam")
role = cf.Role("foo")
try:
role.load()
except Exception as e:
print(type(e))
raise e
返回的错误类型为 botocore.errorfactory.NoSuchEntityException
。但是,当我尝试导入此异常时,我得到了:
>>> import botocore.errorfactory.NoSuchEntityException
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named NoSuchEntityException
我能找到的捕获此特定错误的最佳方法是:
from botocore.exceptions import ClientError
session = make_session()
cf = session.resource("iam")
role = cf.Role("foo")
try:
role.load()
except ClientError as e:
if e.response["Error"]["Code"] == "NoSuchEntity":
# ignore the target exception
pass
else:
# this is not the exception we are looking for
raise e
但这看起来很“hackish”。有没有办法在boto3中直接导入并捕获ClientError
的特定子类?
编辑:请注意,如果您以第二种方式捕获错误并打印类型,它将是 ClientError
。
最佳答案
如果您使用的是 client你可以像这样捕获异常:
import boto3
def exists(role_name):
client = boto3.client('iam')
try:
client.get_role(RoleName='foo')
return True
except client.exceptions.NoSuchEntityException:
return False
关于python - 捕获 boto3 ClientError 子类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43354059/
我是 neo4j 的新手,我试图通过 node4js 将数据插入到 neo4j 数据库中,但是发生了任何解决此问题的错误。 var express=require("express"); var ap
我正在尝试将 AWS Simple Email Service 与 Python 结合使用。我关注了Send an Email Using the AWS SDK for Python (Boto)
load csv with headers from 'file:///C:/Users/user/Desktop/Neo4J' as row Create (:State_Code {state_c
我在 onErrorResponse 中收到 com.android.volley.ClientError 异常。在我的代码下面。最初代码使用 volley 'StringRequest' 工作;当我
使用如下代码片段,我们可以捕获 AWS 异常: from aws_utils import make_session session = make_session() cf = session.res
我正在尝试使用 volley 将一些数据发布到自定义 API。这是我也在尝试更新信息的 API 模型。可以在 http://ecoproduce.eu/swagger/index.html 上找到在以
我使用自定义 Web 服务作为 neo4j 的非托管扩展。 这是 Neo4j 提供的详细信息,我已遵循该详细信息并创建了自己的非托管扩展。 http://neo4j.com/docs/stable/s
我浏览了位于此处的快速入门:https://boto3.readthedocs.io/en/latest/guide/quickstart.html 我安装了 AWS CLI 并使用我的有效 key
我正在尝试使用脚本在 NEO4j db 中导入 csv 文件: LOAD CSV FROM "file:///dataframe6.txt" AS line RETURN count(*) 但我收到以
在 Neo4j 中运行以下查询时 USING PERIODIC COMMIT LOAD CSV WITH HEADERS FROM 'file:///home/peppa/database/ap/aC
我有密码查询,它应该删除 2 个节点之间的关系 MATCH (t:User) - [r:LINKED_TO] - (p:Movie) WHERE ID (t) = {0}, ID (p) = {5}
我已将 Google 云端硬盘与我的应用程序集成,直到今天它都运行良好。我没有更改任何代码或客户端 ID,现在在我们网站上授权 GDrive 时出现此错误: Google::APIClient::Cl
我正在尝试使用 ruby gem 'twitter',但由于未知原因我无法使用它。 这是 .rb 代码: require 'twitter' puts "Greetings, World!" pu
我对 APOC 和图形算法插件有一些问题。 我按照说明将 .jars 放入 {NEO4j_HOME}/plugins并更改我的 {NEO4j_HOME}/conf/neo4j.conf 中的设置 db
嗨,我使用的是 Windows 10 和 Neo4j 桌面版。 我正在尝试使用以下 Cypher 查询来执行 nlp: CALL ga.nlp.processor.addPipeline({ name
当我使用 neo4j 和 neo4j 执行 :server connect 时,我得到 Neo.ClientError.Security.Unauthorized: The client is由于身份
我想知道如何解决这个问题。已完成代码的研究和替换,但问题仍然存在。 这是我使用 volley 的代码。 private void Regist(){ loading.setVisibility
尝试通过使用flask-dynamo得到错误“”,在Dynamo数据库中创建具有三个字段的表 botocore.exceptions.ClientError botocore.exceptions.C
我刚开始使用 jekyll,并尝试将 minimal-mistakes-jekyll 主题安装为 gem。将 gem minimal-mistakes-jekyll 添加到我的 gemfile,使用
我正在尝试将 Django 项目连接到 AWS S3。 settings.py 包含以下内容: AWS_ACCESS_KEY_ID = #ID AWS_SECRET_ACCESS_KEY = #Key
我是一名优秀的程序员,十分优秀!