From f10ead7e6c478a03f476d3d53b29af9a883bb07d Mon Sep 17 00:00:00 2001 From: jvoisin Date: Fri, 23 Dec 2011 02:48:23 +0100 Subject: Preliminary display of opendocument metadata This implementation is quick and dirty --- mat/office.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/mat/office.py b/mat/office.py index d6ad367..3e70be4 100644 --- a/mat/office.py +++ b/mat/office.py @@ -7,6 +7,8 @@ import logging import zipfile import fileinput import subprocess +import xml.dom.minidom as minidom +import StringIO try: import cairo @@ -18,7 +20,6 @@ import mat import parser import archive - class OpenDocumentStripper(archive.GenericArchiveStripper): ''' An open document file is a zip, with xml file into. @@ -34,8 +35,14 @@ class OpenDocumentStripper(archive.GenericArchiveStripper): metadata = {} try: content = zipin.read('meta.xml') + dom1 = minidom.parseString(content) + a = dom1.getElementsByTagName('office:meta') + for i in a[0].childNodes: + msg = i.tagName + ' : ' + for j in i.childNodes: + msg += j.data + print(msg) zipin.close() - metadata[self.filename] = 'harmful meta' except KeyError: # no meta.xml file found logging.debug('%s has no opendocument metadata' % self.filename) return metadata -- cgit v1.3