首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python将文件从亚马逊S3移动到中小型企业共享

Python将文件从亚马逊S3移动到中小型企业共享
EN

Stack Overflow用户
提问于 2021-12-02 16:47:12
回答 1查看 121关注 0票数 0

我目前正在尝试编写Python代码,以便在亚马逊网络服务存储桶和亚马逊网络服务FSx S3共享之间传输文件。这将在Lambda函数中使用。

我可以通过使用Lambda临时存储/tmp并将文件从S3传输到/tmp,然后从/tmp传输到中小型企业共享来实现这一点,但将文件直接从S3传输到中小型企业共享会更高效。我可以使用Python AWS BOTO3 SDK通过以下代码直接从S3存储桶中打开该文件:

代码语言:javascript
复制
fileobj = s3client.get_object(
    Bucket=bucketname,
    Key = file_to_read) 

代码语言:javascript
复制
connection.storeFile(service_name='s3-test', 
                     path='test-write.txt',
                     file_obj = fileobj["Body"])

已在SMB共享上成功创建test-write.txt文件,但该文件为空,大小为0。没有错误,程序成功完成。我认为这一定与file_obj所期望的python“类似文件的对象”有关。由于没有错误,我假设我使用的fileobj“Body”是正确的?

有什么想法会很受欢迎吗?

EN

回答 1

Stack Overflow用户

发布于 2021-12-02 19:29:54

问题可能来自方法尝试写入的错误指针位置。

可以使用文件对象的查找方法来更改文件指针的位置。

在像这样写之前放入seek(0)行。

代码语言:javascript
复制
file_obj.seek(0)
connection.storeFile(...
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70203422

复制
相关文章

相似问题

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