From 5715ba52f2238af513b0b87f4aa3c0158d2c84ba Mon Sep 17 00:00:00 2001 From: jvoisin Date: Sat, 30 Jul 2011 21:47:31 +0200 Subject: Documentation, and removal of unnecessary imports --- lib/archive.py | 15 +++++++++++++++ lib/audio.py | 10 +++++----- lib/images.py | 10 ++++++++++ lib/mat.py | 2 -- lib/misc.py | 3 +++ lib/office.py | 23 +++++++++-------------- lib/parser.py | 7 ++++--- 7 files changed, 46 insertions(+), 24 deletions(-) (limited to 'lib') diff --git a/lib/archive.py b/lib/archive.py index f9e4dba..108134c 100644 --- a/lib/archive.py +++ b/lib/archive.py @@ -1,3 +1,6 @@ +''' + Take care of archives formats +''' import tarfile import zipfile @@ -67,6 +70,9 @@ class ZipStripper(GenericArchiveStripper): return True def is_clean(self): + ''' + Check if the given file is clean from harmful metadata + ''' zipin = zipfile.ZipFile(self.filename, 'r') if zipin.comment != '': logging.debug('%s has a comment' % self.filename) @@ -154,6 +160,9 @@ harmless format' % item.filename) class TarStripper(GenericArchiveStripper): + ''' + Represent a tarfile archive + ''' def _remove(self, current_file): ''' remove the meta added by tar itself to the file @@ -209,6 +218,9 @@ class TarStripper(GenericArchiveStripper): return True def is_clean(self): + ''' + Check if the file is clean from harmful metadatas + ''' tarin = tarfile.open(self.filename, 'r' + self.compression) for item in tarin.getmembers(): if not self.is_file_clean(item): @@ -233,6 +245,9 @@ class TarStripper(GenericArchiveStripper): return True def get_meta(self): + ''' + Return a dict with all the meta of the file + ''' tarin = tarfile.open(self.filename, 'r' + self.compression) metadata = {} for current_file in tarin.getmembers(): diff --git a/lib/audio.py b/lib/audio.py index 73030af..f1f53ff 100644 --- a/lib/audio.py +++ b/lib/audio.py @@ -3,9 +3,9 @@ ''' try: from mutagen.flac import FLAC - from mutagen.apev2 import APEv2 + from mutagen.apev2 import APEv2File from mutagen.oggvorbis import OggVorbis -except: +except ImportError: pass @@ -70,7 +70,7 @@ class Apev2Stripper(parser.GenericParser): shutil.copy2(self.filename, self.output) self.filename = self.output - mfile = APEv2(self.filename) + mfile = APEv2File(self.filename) mfile.delete() mfile.save() @@ -78,7 +78,7 @@ class Apev2Stripper(parser.GenericParser): ''' Check if the "metadata" block is present in the file ''' - mfile = APEv2(self.filename) + mfile = APEv2File(self.filename) if mfile.tags is None: return True else: @@ -89,7 +89,7 @@ class Apev2Stripper(parser.GenericParser): Return the content of the metadata block if present ''' metadata = {} - mfile = APEv2(self.filename) + mfile = APEv2File(self.filename) if mfile.tags is None: return metadata for key, value in mfile.tags: diff --git a/lib/images.py b/lib/images.py index df3d256..9fa9999 100644 --- a/lib/images.py +++ b/lib/images.py @@ -1,3 +1,7 @@ +''' + Takes care about pictures formats +''' + import parser @@ -6,6 +10,9 @@ class JpegStripper(parser.GenericParser): Represents a .jpeg file ''' def _should_remove(self, field): + ''' + return True if the field is compromizing + ''' if field.name.startswith('comment'): return True elif field.name in ("photoshop", "exif", "adobe"): @@ -19,6 +26,9 @@ class PngStripper(parser.GenericParser): Represents a .png file ''' def _should_remove(self, field): + ''' + return True if the field is compromizing + ''' if field.name.startswith("text["): return True elif field.name is "time": diff --git a/lib/mat.py b/lib/mat.py index fa6cf96..8226c7e 100644 --- a/lib/mat.py +++ b/lib/mat.py @@ -7,7 +7,6 @@ import os import subprocess import logging -import mimetypes import hachoir_core.cmd_line import hachoir_parser @@ -102,7 +101,6 @@ def create_class_file(name, backup, add2archive): return mime = parser.mime_type - print mime if mime.startswith('application/vnd.oasis.opendocument'): mime = 'application/vnd.oasis.opendocument' # opendocument fileformat diff --git a/lib/misc.py b/lib/misc.py index f846388..acbaed8 100644 --- a/lib/misc.py +++ b/lib/misc.py @@ -31,6 +31,9 @@ class TorrentStripper(parser.GenericParser): return True def get_meta(self): + ''' + Return a dict with all the meta of the file + ''' metadata = {} for field in self.editor['root']: if self._should_remove(field): diff --git a/lib/office.py b/lib/office.py index 966a64d..2320e40 100644 --- a/lib/office.py +++ b/lib/office.py @@ -3,14 +3,9 @@ ''' import os -import mimetypes -import subprocess -import tempfile -import glob import logging import zipfile import re -import shutil from xml.etree import ElementTree try: @@ -103,13 +98,13 @@ class OpenDocumentStripper(archive.GenericArchiveStripper): zipin.getinfo('meta.xml') return False except KeyError: # no meta.xml in the file - zipin.close() - czf = archive.ZipStripper(self.filename, self.parser, - 'application/zip', self.backup, self.add2archive) - if czf.is_clean(): - return True - else: - return False + zipin.close() + czf = archive.ZipStripper(self.filename, self.parser, + 'application/zip', self.backup, self.add2archive) + if czf.is_clean(): + return True + else: + return False return True @@ -172,7 +167,7 @@ class PdfStripper(parser.GenericParser): ''' Return a dict with all the meta of the file ''' - metadata={} + metadata = {} for key in self.meta_list: if key == 'creation-date' or key == 'mod-date': #creation and modification are set to -1 @@ -181,5 +176,5 @@ class PdfStripper(parser.GenericParser): else: if self.document.get_property(key) is not None and \ self.document.get_property(key) != '': - metadata[key] = self.document.get_property(key) + metadata[key] = self.document.get_property(key) return metadata diff --git a/lib/parser.py b/lib/parser.py index 385dd78..044ef0a 100644 --- a/lib/parser.py +++ b/lib/parser.py @@ -6,7 +6,6 @@ import hachoir_core import hachoir_editor import os -import mimetypes import mat @@ -14,6 +13,9 @@ NOMETA = ('.bmp', 'html', '.py', '.rdf', '.txt', '.xml') class GenericParser(object): + ''' + Parent class of all parsers + ''' def __init__(self, filename, parser, mime, backup, add2archive): self.filename = '' self.parser = parser @@ -30,7 +32,6 @@ class GenericParser(object): self.basename = os.path.basename(filename) # only filename - def is_clean(self): ''' Check if the file is clean from harmful metadatas @@ -68,7 +69,7 @@ class GenericParser(object): def get_meta(self): ''' - return a dict with all the meta of the file + Return a dict with all the meta of the file ''' metadata = {} for field in self.editor: -- cgit v1.3