summaryrefslogtreecommitdiffstats
path: root/pyload/plugin/internal/UnZip.py
diff options
context:
space:
mode:
Diffstat (limited to 'pyload/plugin/internal/UnZip.py')
-rw-r--r--pyload/plugin/internal/UnZip.py41
1 files changed, 41 insertions, 0 deletions
diff --git a/pyload/plugin/internal/UnZip.py b/pyload/plugin/internal/UnZip.py
new file mode 100644
index 000000000..8cf71f659
--- /dev/null
+++ b/pyload/plugin/internal/UnZip.py
@@ -0,0 +1,41 @@
+# -*- coding: utf-8 -*-
+
+import sys
+import zipfile
+
+from pyload.plugin.internal.AbstractExtractor import AbtractExtractor
+
+
+class UnZip(AbtractExtractor):
+ __name = "UnZip"
+ __version = "0.10"
+
+ __description = """Zip extractor plugin"""
+ __license = "GPLv3"
+ __authors = [("RaNaN", "RaNaN@pyload.org")]
+
+
+ @staticmethod
+ def checkDeps():
+ return sys.version_info[:2] >= (2, 6)
+
+
+ @staticmethod
+ def getTargets(files_ids):
+ result = []
+
+ for file, id in files_ids:
+ if file.endswith(".zip"):
+ result.append((file, id))
+
+ return result
+
+
+ def extract(self, progress, password=None):
+ z = zipfile.ZipFile(self.file)
+ self.files = z.namelist()
+ z.extractall(self.out)
+
+
+ def getDeleteFiles(self):
+ return [self.file]