上传亚马逊s3 python,boto3后获取文件url

J_l*_*log 5 python amazon-s3 amazon-web-services boto3

我只是boto3 的新手,我不明白如何获取我刚刚上传到 s3 amazon 的文件的 URL 链接。

请说清楚。

谢谢

import boto3

s3 = boto3.resource('s3')

data = open ('file.xlsx', 'rb')
s3.Bucket ('dimxxx1').put_object (Key='file.xlsx', Body=data)
Run Code Online (Sandbox Code Playgroud)

ala*_*blk 7

在Python3中,

url = f"https://{bucket}.s3.{region}.amazonaws.com/{folder}{file_name}"
Run Code Online (Sandbox Code Playgroud)


Joh*_*ein 5

首先,更好的上传方式是:

import boto3
s3 = boto3.resource('s3')
s3.Bucket('dimxxx1').upload_file('/tmp/file.xlsx', 'file.xlsx')
Run Code Online (Sandbox Code Playgroud)

要获取 URL,您可以从基本元素构建它:

http://s3-REGION-.amazonaws.com/BUCKET-NAME/KEY
Run Code Online (Sandbox Code Playgroud)

例如:

http://s3-ap-southeast-2.amazonaws.com/dimxxx1/file.xlsx
Run Code Online (Sandbox Code Playgroud)