在过去的两天里,我一直在浏览互联网,试图找到解决我的问题的方法。我有一个包含不同文件的文件夹。他们运行文件类型的策略。我正在尝试编写一个 python 脚本,该脚本将从每个文件中读取元数据(如果存在)。目的是最终将数据输出到文件中,以便与另一个程序的元数据提取进行比较。
我发现了一些示例,其中它适用于目录中的极少数文件。我发现的所有方法都涉及打开存储容器对象。我是 Python 新手,不确定存储容器对象是什么。我只知道我的大多数文件在尝试使用时都会出错
pythoncom.StgOpenStorage(<File Name>, None, flags)
通过少数实际工作,我可以获得主要的元数据标签,如标题、主题、作者、创建等。
除了存储容器之外,还有人知道获取元数据的方法吗?另外,如果有一种更简单的方法可以用另一种语言来做到这一点,请务必提出建议。
Thanks
您可以使用 Shell com 对象来检索任何元数据
在资源管理器中可见:
import win32com.client
sh=win32com.client.gencache.EnsureDispatch('Shell.Application',0)
ns = sh.NameSpace(r'm:\music\Aerosmith\Classics Live!')
colnum = 0
columns = []
while True:
colname=ns.GetDetailsOf(None, colnum)
if not colname:
break
columns.append(colname)
colnum += 1
for item in ns.Items():
print (item.Path)
for colnum in range(len(columns)):
colval=ns.GetDetailsOf(item, colnum)
if colval:
print('\t', columns[colnum], colval)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)