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

如何为GCS对象的blob元数据写入Custom time字段?

问题原因

你当前的代码仅修改了本地内存中Blob对象的custom_time属性,没有调用接口将变更同步到GCS服务端,因此修改不会持久化生效。
list_blobs返回的是GCS服务端元数据的本地快照,所有本地属性修改都需要主动调用提交接口才能同步到服务端。

修正后代码
import datetime
from google.cloud import storage

bucket_name = 'bucket_name'
folder_name = ''

bucket = storage.Client().get_bucket(bucket_name)
blobs = bucket.list_blobs(prefix=folder_name)

for blob in blobs:
    blob.custom_time = datetime.datetime.now(datetime.timezone.utc)
    # 新增:将元数据变更提交到GCS服务端
    blob.patch()
注意事项
  • 若需要批量更新大量对象,建议添加异常捕获逻辑,避免单个对象更新失败导致整个任务中断
  • GCS规定Custom Time只能设置为不早于当前已有值的时间,无法回退设置为更早的时间,更新前请确认时间取值符合业务要求
  • 如果待修改的对象属于归档/冷存储类别,需要先恢复对象才能修改元数据

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 15:42:02