2016-10-09 36 views
0

我需要能夠使用Python查看xlsx文件的「最後修改者」屬性。我已經能夠爲docx文件做些什麼,並希望這種架構足夠類似於其他Office應用程序,但不幸的是沒有。有人知道xlsx有類似的模塊嗎?使用Python「xlsx的最後修改者」(用戶名,而不是時間)屬性

這是使用Python,DOCX查看域腳本:

from docx import Document 
import docx 

document = Document('mine.docx') 
core_properties = document.core_properties 
print(core_properties.last_modified_by) 

我使用Python 3.4和DOCX 0.8.6在這裏。

+0

只是爲了重申:通過「最後修改者」我正在尋找一個用戶名,n沒有時間。 :) – YesIAmThatGuy

+0

http://stackoverflow.com/a/7021492/293494中提供的方法可能適用於.xlsx文件。 – mkj

+0

謝謝mkj,看起來很有趣。我會看一看,讓你知道我是怎麼開始的。 – YesIAmThatGuy

回答

0
import os 
filename = "C:\\test.xlsx" 
statsbuf = os.stat(filename) 
print "modified:",statsbuf.st_mtime 



f = os.path.getmtime('C:\\test.xlsx') 
print f 

自年初以來

+0

感謝這篇文章,這是爲了找到修改時間,而不是最後一次修改的用戶。設置爲Python 2而不是3 – YesIAmThatGuy

+0

在python 3中工作,據我所知。您正在尋找一個* *。抱歉誤讀您的消息 – rafalf

+0

沒關係,我的問題的標題可能不那麼明確可能已經,所以我現在已經改變了它。對於3,你需要圍繞打印功能的括號。:) – YesIAmThatGuy

1

對於.xlsx文件,你可以使用這個(設置filename到您的.xlsx文件名):我沒有測試它

import xml.etree.ElementTree 
import xml.etree.cElementTree as ET 
import zipfile 

corePropNS = '{http://schemas.openxmlformats.org/package/2006/metadata/core-properties}' 

zf = zipfile.ZipFile(filename, 'r') 
part = zf.open('docProps/core.xml', 'r') 
tree = ET.XML(part.read()) 
lastModifiedBy = tree.find(corePropNS+'lastModifiedBy').text 

print(lastModifiedBy) 

,但我'd期望相同的代碼也可以用於其他OOXML文件(例如.docx

相關問題