我正在编写一个 python 脚本,以从 aws s3 存储桶导入数据。在某些机器上,它返回 None 类型没有属性 get。在调试 pyathena 时,我发现此错误来自 util.py 文件中的 lambda 表达式,在以下函数中:
def retry_api_call(func, config, logger=None, *args, **kwargs):
retry = tenacity.Retrying(
retry=retry_if_exception(
lambda e: getattr(e, "response", {}).get("Error", {}).get("Code", None)
in config.exceptions
if e
else False
),
stop=stop_after_attempt(config.attempt),
wait=wait_exponential(
multiplier=config.multiplier,
max=config.max_delay,
exp_base=config.exponential_base,
),
after=after_log(logger, logger.level) if logger else None,
reraise=True,
)
return retry(func, *args, **kwargs)
有人有什么想法吗?
谢谢