diff options
author | 2014-11-15 17:15:29 +0100 | |
---|---|---|
committer | 2014-11-15 17:15:29 +0100 | |
commit | 282362c01b67f83ff5cf677ba125a41a6d594f2c (patch) | |
tree | 7782f1a146f41fa26fdd2c4bdb1679977cf5cf35 /pyload/plugins/crypter/FileserveCom.py | |
parent | Code cosmetics (diff) | |
download | pyload-282362c01b67f83ff5cf677ba125a41a6d594f2c.tar.xz |
Update plugins 2
Diffstat (limited to 'pyload/plugins/crypter/FileserveCom.py')
-rw-r--r-- | pyload/plugins/crypter/FileserveCom.py | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/pyload/plugins/crypter/FileserveCom.py b/pyload/plugins/crypter/FileserveCom.py new file mode 100644 index 000000000..5ccccfc16 --- /dev/null +++ b/pyload/plugins/crypter/FileserveCom.py @@ -0,0 +1,38 @@ +# -*- coding: utf-8 -*- + +import re + +from pyload.plugins.internal.Crypter import Crypter + + +class FileserveCom(Crypter): + __name__ = "FileserveCom" + __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""" + __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.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.urls = [map(lambda s: "http://fileserve.com%s" % s, new_links)] |