首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从S3下载文件到用户计算机

从S3下载文件到用户计算机
EN

Stack Overflow用户
提问于 2022-04-28 22:28:46
回答 1查看 30关注 0票数 0

在Django项目中,我有以下看法

代码语言:javascript
复制
class download_mscore_software(APIView):
    def get(self, request):
        session = boto3.Session(
            aws_access_key_id=settings.AWS_ACCESS_KEY_ID,
            aws_secret_access_key=settings.AWS_SECRET_ACCESS_KEY
        )
        s3 = session.resource('s3')

        clancy = s3.Bucket("magpie-bixly-test").download_file("Clancy-Gorillaz.jpg", "Clancy-Gorillaz.jpg")

这样可以将文件下载到我的项目目录中。不过,我需要该文件下载到用户的电脑。我如何改变这种情况,使之发生呢?我试过这个:

代码语言:javascript
复制
clancy = s3.Bucket('magpie-bixly-test').download_file('Clancy-Gorillaz.jpg', 'Users/Downloads/Clancy-Gorillaz.jpg')

但是我收到一个错误,说没有这样的目录。如果像这样把文件名从末尾去掉,也会发生同样的情况。

代码语言:javascript
复制
clancy = s3.Bucket('magpie-bixly-test').download_file('Clancy-Gorillaz.jpg', 'Users/Downloads')
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-04-28 23:22:06

我的猜测是,指定的路径相对于您的项目,因此找不到Users/Downloads文件夹。您可以尝试指定绝对路径( C:/Users/<USERNAME>/Downloads/Clancy-Gorillaz.jpg/home/<USERNAME>/Downloads/Clancy-Gorillaz.jpg或Linux:/home/<USERNAME>/Downloads/Clancy-Gorillaz.jpg)。应该用OS用户替换<USERNAME>的位置。

即使它能工作,一个好的实践就是使用os.path来处理特定的操作系统。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72050892

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档