gpt4 book ai didi

python - FileNotFoundError 在使用 Python 的 AWS Lambda 上出现前导斜线问题

转载 作者:行者123 更新时间:2023-11-28 22:19:46 25 4
gpt4 key购买 nike

我的开发环境是 Windows 机器。当尝试从 S3 本地下载文件时,它没有问题。但是,当我将函数加载到 Lambda 时,我收到了一个 FileNotFoundError 错误,这是由 Lambda 要求在文件键中使用前导斜线引起的。

这在本地有效,但在 Lambda 上无效...

s3 = boto3.resource('s3')
new_file_key = os.path.join('tmp', file_name)
s3.Bucket('bucketname').download_file(file_key, new_file_key)

这适用于 Lambda,但不适用于本地...

s3 = boto3.resource('s3')
new_file_key = os.path.join('/tmp', file_name)
s3.Bucket('bucketname').download_file(file_key, new_file_key)

处理这个问题最简单的方法是什么?

最佳答案

听起来你想把文件下载到

  • C:\tmp 在 Windows 上
  • /tmp 在你的 lambda 容器 (linux) 上

使用 this SO answer作为引用,以下内容应以与平台无关的方式运行:

s3 = boto3.resource('s3')
new_file_key = os.path.abspath(os.path.join(os.sep, 'tmp', file_name))
s3.Bucket('bucketname').download_file(file_key, new_file_key)

关于python - FileNotFoundError 在使用 Python 的 AWS Lambda 上出现前导斜线问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49477037/

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