使用python获取“最后保存者”(Windows文件)

时间:2019-12-09 22:21:22

标签: python ms-office metadata

如何从任何Windows文件的“上次保存者”属性中获取用户名值?

例如:我可以在Word文件上单击鼠标右键并访问详细信息标签来查看此信息。参见下图:

enter image description here

任何人都知道如何使用python代码获取它吗?

1 个答案:

答案 0 :(得分:0)

在@ user1558604的评论之后,我在google上搜索了一下并找到了解决方案。我对扩展名.docx,.xlsx,.pptx进行了测试。

import zipfile
import xml.dom.minidom

# Open the MS Office file to see the XML structure.
filePath = r"C:\Users\Desktop\Perpetual-Draft-2019.xlsx"
document = zipfile.ZipFile(filePath)

# Open/read the core.xml (contains the last user and modified date).
uglyXML = xml.dom.minidom.parseString(document.read('docProps/core.xml')).toprettyxml(indent='  ')

# Split lines in order to create a list.
asText = uglyXML.splitlines()

# loop the list in order to get the value you need. In my case last Modified By and the date.
for item in asText:
    if 'lastModifiedBy' in item:
        itemLength = len(item)-20
        print('Modified by:', item[21:itemLength])

    if 'dcterms:modified' in item:
        itemLength = len(item)-29
        print('Modified On:', item[46:itemLength])

控制台中的结果是:

修改者:adm.UserName

修改日期:2019年11月8日”