diff options
Diffstat (limited to 'module/plugins/crypter/MediafireComFolder.py')
-rw-r--r-- | module/plugins/crypter/MediafireComFolder.py | 30 |
1 files changed, 16 insertions, 14 deletions
diff --git a/module/plugins/crypter/MediafireComFolder.py b/module/plugins/crypter/MediafireComFolder.py index 5dd4e555b..d1dc89518 100644 --- a/module/plugins/crypter/MediafireComFolder.py +++ b/module/plugins/crypter/MediafireComFolder.py @@ -7,28 +7,31 @@ from module.common.json_layer import json_loads class MediafireComFolder(Crypter): - __name__ = "MediafireComFolder" + __name__ = "MediafireComFolder" + __type__ = "crypter" __version__ = "0.14" - __type__ = "crypter" __pattern__ = r'http://(?:www\.)?mediafire\.com/(folder/|\?sharekey=|\?\w{13}($|[/#]))' + __config__ = [("use_subfolder", "bool", "Save package to subfolder", True), + ("subfolder_per_package", "bool", "Create a subfolder for each package", True)] __description__ = """Mediafire.com folder decrypter plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __license__ = "GPLv3" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] - FOLDER_KEY_PATTERN = r"var afI= '(\w+)';" - FILE_URL_PATTERN = r'<meta property="og:url" content="http://www.mediafire.com/\?(\w+)"/>' + + FOLDER_KEY_PATTERN = r'var afI= \'(\w+)' + LINK_PATTERN = r'<meta property="og:url" content="http://www\.mediafire\.com/\?(\w+)"/>' def decrypt(self, pyfile): url, result = checkHTMLHeader(pyfile.url) - self.logDebug('Location (%d): %s' % (result, url)) + self.logDebug("Location (%d): %s" % (result, url)) if result == 0: - # load and parse html + # load and parse html html = self.load(pyfile.url) - m = re.search(self.FILE_URL_PATTERN, html) + m = re.search(self.LINK_PATTERN, html) if m: # file page self.urls.append("http://www.mediafire.com/file/%s" % m.group(1)) @@ -39,8 +42,10 @@ class MediafireComFolder(Crypter): folder_key = m.group(1) self.logDebug("FOLDER KEY: %s" % folder_key) - json_resp = json_loads(self.load( - "http://www.mediafire.com/api/folder/get_info.php?folder_key=%s&response_format=json&version=1" % folder_key)) + json_resp = json_loads(self.load("http://www.mediafire.com/api/folder/get_info.php", + get={'folder_key' : folder_key, + 'response_format': "json", + 'version' : 1})) #self.logInfo(json_resp) if json_resp['response']['result'] == "Success": for link in json_resp['response']['folder_info']['files']: @@ -51,6 +56,3 @@ class MediafireComFolder(Crypter): self.offline() else: self.urls.append(url) - - if not self.urls: - self.fail('Could not extract any links') |