我该如何使用Python在Windows Vista上访问文件属性?

3
问题就像标题中的那样简单,我该如何使用Python访问Windows文件属性,比如修改日期,更具体地说是标签?为了做一个程序,我需要获取特定文件夹中各个文件的所有标签列表,但我不确定该如何做。我有win32模块,但我没有看到我需要的东西。
谢谢大家的快速回复,然而,我现在需要从文件中获取的主要状态是标签属性,这是包含在Windows Vista中的,但不幸的是,它没有包含在os.stat和stat模块中。谢谢你们,因为我确实需要这些数据,但这更多是我的想法后来才想到的。
4个回答

7
您可以使用 os.statstat
import os
import stat
import time

def get_info(file_name):
    time_format = "%m/%d/%Y %I:%M:%S %p"
    file_stats = os.stat(file_name)
    modification_time = time.strftime(time_format,time.localtime(file_stats[stat.ST_MTIME]))
    access_time = time.strftime(time_format,time.localtime(file_stats[stat.ST_ATIME]))
    return modification_time, access_time

你可以获取许多其他统计数据,请查看统计模块以获取完整列表。 要提取文件夹中所有文件的信息,请使用 os.walk
import os
for root, dirs, files in os.walk(/path/to/your/folder):
    for name in files:
        print get_info(os.path.join(root, name))

3

1

例子:

import time, datetime
fstat = os.stat(FILENAME)
st_mtime = fstat.st_mtime # Date modified
a,b,c,d,e,f,g,h,i = time.localtime(st_mtime)
print datetime.datetime(a,b,c,d,e,f,g)

1

(您可能会注意到在另一个线程上给出了以下回复的更长版本。)

  1. 下载并安装pywin32扩展程序
  2. 获取Tim Golden为此任务编写的代码
  3. 将Tim的代码保存为模块在您自己的计算机上。
  4. 调用您新模块的property_sets方法(提供必要的文件路径)。该方法返回一个生成器,可迭代。请参见以下示例代码和输出。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接