From dfc2cd919bbfa896307cc882437b101a54a3e8d6 Mon Sep 17 00:00:00 2001 From: Philippe Lagadec Date: Sun, 10 Jan 2016 22:45:20 +0100 Subject: [PATCH] olemeta: only display properties when present in the file --- oletools/olemeta.py | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/oletools/olemeta.py b/oletools/olemeta.py index 1240a98..1c018b0 100755 --- a/oletools/olemeta.py +++ b/oletools/olemeta.py @@ -43,8 +43,9 @@ http://www.decalage.info/python/oletools # 2013-07-24 v0.01 PL: - first version # 2014-11-29 v0.02 PL: - use olefile instead of OleFileIO_PL # - improved usage display +# 2015-12-29 v0.03 PL: - only display properties present in the file -__version__ = '0.02' +__version__ = '0.03' #------------------------------------------------------------------------------ # TODO: @@ -68,6 +69,20 @@ except IndexError: # parse and display metadata: meta = ole.get_metadata() -meta.dump() + +print('Properties from SummaryInformation stream:') +for prop in meta.SUMMARY_ATTRIBS: + value = getattr(meta, prop) + if value is not None: + # TODO: pretty printing for strings, dates, numbers + print('- %s: %s' % (prop, value)) +print '' +print('Properties from DocumentSummaryInformation stream:') +for prop in meta.DOCSUM_ATTRIBS: + value = getattr(meta, prop) + if value is not None: + # TODO: pretty printing for strings, dates, numbers + print('- %s: %s' % (prop, value)) + ole.close() -- libgit2 0.21.4