summaryrefslogtreecommitdiffstats
path: root/module/plugins/crypter/FileserveComFolder.py
diff options
context:
space:
mode:
Diffstat (limited to 'module/plugins/crypter/FileserveComFolder.py')
-rw-r--r--module/plugins/crypter/FileserveComFolder.py25
1 files changed, 15 insertions, 10 deletions
diff --git a/module/plugins/crypter/FileserveComFolder.py b/module/plugins/crypter/FileserveComFolder.py
index c3c8b58fe..e6b35fd36 100644
--- a/module/plugins/crypter/FileserveComFolder.py
+++ b/module/plugins/crypter/FileserveComFolder.py
@@ -6,28 +6,33 @@ from module.plugins.Crypter import Crypter
class FileserveComFolder(Crypter):
- __name__ = "FileserveComFolder"
- __type__ = "crypter"
- __pattern__ = r'http://(?:www\.)?fileserve.com/list/\w+'
+ __name__ = "FileserveComFolder"
+ __type__ = "crypter"
__version__ = "0.11"
+
+ __pattern__ = r'http://(?:www\.)?fileserve\.com/list/\w+'
+ __config__ = [("use_subfolder", "bool", "Save package to subfolder", True),
+ ("subfolder_per_package", "bool", "Create a subfolder for each package", True)]
+
__description__ = """FileServe.com folder decrypter plugin"""
- __author_name__ = "fionnc"
- __author_mail__ = "fionnc@gmail.com"
+ __license__ = "GPLv3"
+ __authors__ = [("fionnc", "fionnc@gmail.com")]
+
FOLDER_PATTERN = r'<table class="file_list">(.*?)</table>'
LINK_PATTERN = r'<a href="([^"]+)" class="sheet_icon wbold">'
+
def decrypt(self, pyfile):
html = self.load(pyfile.url)
new_links = []
- folder = re.search(self.FOLDER_PATTERN, html, re.DOTALL)
- if folder is None: self.fail("Parse error (FOLDER)")
+ folder = re.search(self.FOLDER_PATTERN, html, re.S)
+ if folder is None:
+ self.error(_("FOLDER_PATTERN not found"))
new_links.extend(re.findall(self.LINK_PATTERN, folder.group(1)))
if new_links:
- self.core.files.addLinks(map(lambda s: "http://fileserve.com%s" % s, new_links), pyfile.package().id)
- else:
- self.fail('Could not extract any links')
+ self.urls = [map(lambda s: "http://fileserve.com%s" % s, new_links)]