Python 如何在不保存文件的情况下使用boto3从s3执行认证下载?
使用以下命令执行从s3到文件的认证下载非常简单Python 如何在不保存文件的情况下使用boto3从s3执行认证下载?,python,amazon-s3,boto3,Python,Amazon S3,Boto3,使用以下命令执行从s3到文件的认证下载非常简单 import boto3 s3 = boto3.resource('s3') def save_file_from_s3(bucket_name, key_name, file_name): b = s3.Bucket(bucket_name) b.download_file(key_name, file_name) 使用 import from StringIO import StringIO import urllib f
import boto3
s3 = boto3.resource('s3')
def save_file_from_s3(bucket_name, key_name, file_name):
b = s3.Bucket(bucket_name)
b.download_file(key_name, file_name)
使用
import from StringIO import StringIO
import urllib
file_like_object = StringIO(urllib.urlopen(url).read())
(见附件)
但是如何执行从s3到类似文件的对象的认证下载?您只需调用:
这将返回一个dictionary对象。但是我想要的是一个文件类型的对象,然后我可以处理它,例如用枕头。字典对象包含关键字“Body”下的文件对象。因此,要完成这个示例,只需使用f=obj['Body']
import boto3
s3 = boto3.resource('s3')
# obj = s3.Object(bucket_name, key_name).get()
bucket = s3.Bucket(bucket_name)
obj = bucket.Object(key_name).get()
body = obj.get('Body')