diff options
Diffstat (limited to 'module/plugins/hoster/MegacrypterCom.py')
-rw-r--r-- | module/plugins/hoster/MegacrypterCom.py | 53 |
1 files changed, 0 insertions, 53 deletions
diff --git a/module/plugins/hoster/MegacrypterCom.py b/module/plugins/hoster/MegacrypterCom.py deleted file mode 100644 index 7a86dbf70..000000000 --- a/module/plugins/hoster/MegacrypterCom.py +++ /dev/null @@ -1,53 +0,0 @@ -# -*- coding: utf-8 -*- - -import re - -from module.common.json_layer import json_loads, json_dumps -from module.plugins.hoster.MegaNz import MegaNz - - -class MegacrypterCom(MegaNz): - __name__ = "MegacrypterCom" - __type__ = "hoster" - __version__ = "0.2" - - __pattern__ = r'(https?://[a-z0-9]{0,10}\.?megacrypter\.com/[a-zA-Z0-9!_\-]+)' - - __description__ = """Megacrypter.com decrypter plugin""" - __author_name__ = "GonzaloSR" - __author_mail__ = "gonzalo@gonzalosr.com" - - API_URL = "http://megacrypter.com/api" - FILE_SUFFIX = ".crypted" - - - def callApi(self, **kwargs): - """ Dispatch a call to the api, see megacrypter.com/api_doc """ - self.logDebug("JSON request: " + json_dumps(kwargs)) - resp = self.load(self.API_URL, post=json_dumps(kwargs)) - self.logDebug("API Response: " + resp) - return json_loads(resp) - - def process(self, pyfile): - # match is guaranteed because plugin was chosen to handle url - node = re.match(self.__pattern__, pyfile.url).group(1) - - # get Mega.co.nz link info - info = self.callApi(link=node, m="info") - - # get crypted file URL - dl = self.callApi(link=node, m="dl") - - # TODO: map error codes, implement password protection - # if info['pass'] is True: - # crypted_file_key, md5_file_key = info['key'].split("#") - - key = self.b64_decode(info['key']) - - pyfile.name = info['name'] + self.FILE_SUFFIX - - self.download(dl['url']) - self.decryptFile(key) - - # Everything is finished and final name can be set - pyfile.name = info['name'] |