You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Python从S3对象友好URL获取Key?

从S3友好URL提取Key的官方Python实现

当然有官方的解决方案!不用自己写正则表达式做模式匹配,AWS的Python生态里早就提供了现成的工具,完美对应Java里的getKey()方法。

你可以使用botocore.utils模块中的parse_s3_url函数——这是AWS官方维护的工具,能处理所有合法的S3 URL格式(包括虚拟主机模式、路径模式、带区域的URL等),比自己写的匹配逻辑靠谱多了。

具体实现步骤

  1. 确保你已经安装了boto3(botocore是它的底层依赖,会自动安装)
  2. 导入parse_s3_url函数并使用它解析URL:
from botocore.utils import parse_s3_url

# 示例输入URL
s3_url = "https://s3.amazonaws.com/myfolder/testimage1.jpg"
# 解析得到bucket名称和key
bucket_name, object_key = parse_s3_url(s3_url)

print(object_key)  # 输出: myfolder/testimage1.jpg

这个函数会自动忽略URL中的查询参数(比如签名、过期时间等),只提取出纯净的对象Key。不管你的S3 URL是哪种格式(比如https://my-bucket.s3.us-east-1.amazonaws.com/file.txt这种虚拟主机风格的),它都能正确识别并返回对应的Key。

内容的提问来源于stack exchange,提问作者codeexplorer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 09:13:50