如何从亚马逊Copernicus数字高程模型S3存储桶生成云优化GeoTIFF的下载URL
生成Copernicus DEM公开S3桶中COG文件的可访问URL
没问题,既然这个S3桶是公开可读的,你有两种简单的方式生成可以直接用浏览器访问或wget下载的URL:
方法一:直接构造公开S3对象URL
S3公开桶中的对象有固定的URL格式,你只需要把桶名、区域和对象Key拼接起来就行:
# 基于你已有的变量 region = 'eu-central-1' bucket_name = 'copernicus-dem-30m' # 你之前获取到的key:Copernicus_DSM_COG_10_N00_00_E006_00_DEM/Copernicus_DSM_COG_10_N00_00_E006_00_DEM.tif # 拼接URL public_url = f"https://{bucket_name}.s3.{region}.amazonaws.com/{key}"
生成的URL可以直接复制到浏览器打开,或者用wget命令下载:
wget {public_url}
方法二:用boto3的generate_presigned_url生成URL
虽然你用的是匿名客户端,但也可以调用generate_presigned_url方法生成URL。因为桶是公开的,这个URL不需要签名就能访问(即使设置了过期时间,过期后直接用构造的公开URL依然有效):
url = s3.generate_presigned_url( client_method='get_object', Params={'Bucket': 'copernicus-dem-30m', 'Key': key}, ExpiresIn=3600 # 可选,设置URL的过期时间(秒),公开桶可忽略 )
两种方法生成的URL效果一致,都能直接用于后续的下载操作。你可以根据自己的习惯选择其中一种~
内容的提问来源于stack exchange,提问作者zabop
相关产品推荐
相关产品推荐

