【发布时间】:2017-04-19 23:20:38
【问题描述】:
我对 MS Azure 的世界很陌生。 我正在尝试使用 Python 获取保存在我的 blob 存储中的一堆文件(块 blob)的文件名和最后修改日期。这是我正在使用的代码:
import datetime
from azure.storage.blob import BlockBlobService
blob_service = BlockBlobService(account_name=account, account_key=acckey,protocol='http', request_session=sess)
blob_service.get_blob_to_path(container, pdfname, pdflocal)
generator = blob_service.list_blobs(container)
filenames = []
for blob in generator:
print (blob.name)
pdflocal = './' + blob.name
properties=blob_service.get_blob_to_path(container, blob.name,pdflocal)
date_year = datetime.datetime.fromtimestamp(os.path.getmtime("./"+blob.name) ).strftime('%Y-%m-%d %H:%M:%S')
print (date_year)
filenames.append(blob.name)
print len(filenames)
这里的问题是,代码尝试创建我的文件的副本,因此最后修改日期更新为当前日期和时间。如何在 Azure ML Studio 中访问实际上次修改的日期和时间?
我阅读了有关 Blob.Properties.LastModified 的信息,但它似乎在 python 中不起作用。这里令人困惑的事情之一是关于转换 CloudBlobs 中的 blob。我不确定这是否必须在 Python 脚本中完成,因为存储资源管理器中的 blob 分为三种类型:块、页面和附加。我在这里遗漏了什么吗?
【问题讨论】:
-
嗨,我建议你在github.com/Azure/azure-storage-python/issues 上打开你的问题以获得最大的可见性。请不要忘记在此处发布您的问题编号,以供其他人使用。
-
你是否成功解压了blob中的zip文件。如果是的话,你能分享同样的sn-p吗?
标签: python azure datetime azure-blob-storage last-modified