首页 > 解决方案 > 通过 boto 从 S3 下载 Pickle 文件时损坏

问题描述

这是我从 S3 存储桶下载泡菜文件的代码

def download_resource(key: str, dest: str):
    s3 = boto3.client('s3')
    with open(dest, 'wb') as f:
        s3.download_fileobj(BUCKET, key, f)

我实际上已经用一些泡菜文件成功地做到了这一点,但在一种情况下,我EOFError稍后会得到一个:

with open(dest, 'rb') as f:
    x = pickle.load(f)

如果我改为通过控制台手动从 S3 下载文件,则文件不会损坏,我可以在没有EOFError.

在某些情况下可能会发生这种情况有什么原因吗?

标签: pythonamazon-s3pickle

解决方案


推荐阅读