如何获取存储在 s3 Bucket 中的文件的 uri 路径
How to get uri path for a file stored in s3 Bucket
我的 Bucket 名称 'ABC' 的结构如下:
audiofiles
audio_one.wav
audio_two.mp3
我想要一个 python 代码来获取这些文件的 URI 而不是文件或文件列表,文件 uri 以便我可以在转录作业中将文件用作输入 link .
boto3 s3 客户端没有 return keys/files URLs 的方法。
但是我们可以使用每个对象的Public URL:
import boto3
bucket_name = 'bucket_name'
s3 = boto3.resource('s3')
def lambda_handler(event, context):
my_bucket = s3.Bucket(bucket_name)
for obj in my_bucket.objects.all():
url = f'https://{bucket_name}.s3.amazonaws.com/{obj.key}'
print(url)
这将为您打印如下内容:
https://bucket_name.s3.amazonaws.com/audio_one.wav
https://bucket_name.s3.amazonaws.com/audio_two.mp3
https://bucket_name.s3.amazonaws.com/audio_three.mp3
我的 Bucket 名称 'ABC' 的结构如下:
audiofiles
audio_one.wav
audio_two.mp3
我想要一个 python 代码来获取这些文件的 URI 而不是文件或文件列表,文件 uri 以便我可以在转录作业中将文件用作输入 link .
boto3 s3 客户端没有 return keys/files URLs 的方法。
但是我们可以使用每个对象的Public URL:
import boto3
bucket_name = 'bucket_name'
s3 = boto3.resource('s3')
def lambda_handler(event, context):
my_bucket = s3.Bucket(bucket_name)
for obj in my_bucket.objects.all():
url = f'https://{bucket_name}.s3.amazonaws.com/{obj.key}'
print(url)
这将为您打印如下内容:
https://bucket_name.s3.amazonaws.com/audio_one.wav
https://bucket_name.s3.amazonaws.com/audio_two.mp3
https://bucket_name.s3.amazonaws.com/audio_three.mp3