我在 s3 中有一个 Bucket,我正在尝试提取其中图像的 url。
我正在使用 boto3,而 boto3 似乎没有实现生成 url 方法。
他们有一个核心方法,可以生成这样的 url,
import botocore.session
session = botocore.session.get_session()
client = session.create_client('s3')
presigned_url = client.generate_presigned_url(
'get_object', Params={'Bucket': self.bucket_name, 'Key': self.key})
我被迫做的一件事是,我必须使用会话对象将参数与每个请求一起发送。并且上述方法不允许我设置会话变量(即 ..aws 凭据)
我能得到的最接近的是这个
session = Session(aws_access_key_id='342342342342', aws_secret_access_key='3434234322', region_name='us-east-1')
s3 = session.resource('s3')
object = s3.Object('my-dev-bucket', 'amazonKeyString')
print object.get()["Body"]
这让我得到了 amazon s3 对象,它是一个名为
botocore.response.StreamingBody object at 0x7ffaff8cef50
我可以通过这种方式获取图片的网址吗?