问题描述
尝试将文件添加到AWS S3时,我在使用upload_fileobj的Glue中遇到以下错误:
s3 = boto3.client('s3')
bytes = BytesIO()
zf = zipfile.ZipFile(bytes,"w")
for object_info in bucket.objects.filter(Prefix="stg/transfer/"):
if object_info.key[-1] == "/":
continue
print(object_info.key)
obj = bucket.Object(key=object_info.key)
o = obj.get()
data = o["Body"].read()
name = object_info.key.split('/')[2] + date_str + '.csv'
zf.writestr(name,data)
print(o)
zf.close()
bytes.seek(0)
s3.upload_fileobj(bytes.getvalue(),bucket,key)
s3.upload_fileobj(bytes.getvalue(),bucket,key)文件“ /home/spark/.local/lib/python3.7/site-packages/boto3/s3/inject.py”,第525行,在upload_fileobj引发ValueError(“ Fileobj必须实现读取”)ValueError:Fileobj必须实现读取
有人知道导致错误的原因吗?预先感谢您的帮助!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)