diff options
Diffstat (limited to 'module/plugins/hoster/MegaDebridEu.py')
-rw-r--r-- | module/plugins/hoster/MegaDebridEu.py | 35 |
1 files changed, 20 insertions, 15 deletions
diff --git a/module/plugins/hoster/MegaDebridEu.py b/module/plugins/hoster/MegaDebridEu.py index 13415d063..4d1e1bcb7 100644 --- a/module/plugins/hoster/MegaDebridEu.py +++ b/module/plugins/hoster/MegaDebridEu.py @@ -9,15 +9,16 @@ from module.plugins.Hoster import Hoster class MegaDebridEu(Hoster): - __name__ = "MegaDebridEu" - __type__ = "hoster" + __name__ = "MegaDebridEu" + __type__ = "hoster" __version__ = "0.4" - __pattern__ = r'^https?://(?:w{3}\d+\.mega-debrid.eu|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/download/file/[^/]+/.+$' + __pattern__ = r'^https?://(?:w{3}\d+\.mega-debrid\.eu|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/download/file/[^/]+/.+$' __description__ = """mega-debrid.eu hoster plugin""" - __author_name__ = "D.Ducatel" - __author_mail__ = "dducatel@je-geek.fr" + __license__ = "GPLv3" + __authors__ = [("D.Ducatel", "dducatel@je-geek.fr")] + API_URL = "https://www.mega-debrid.eu/api.php" @@ -28,14 +29,15 @@ class MegaDebridEu(Hoster): except IndexError: return "" + def process(self, pyfile): if re.match(self.__pattern__, pyfile.url): new_url = pyfile.url elif not self.account: - self.exitOnFail(_("Please enter your %s account or deactivate this plugin") % "Mega-debrid.eu") + self.exitOnFail("Please enter your %s account or deactivate this plugin" % "Mega-debrid.eu") else: if not self.connectToApi(): - self.exitOnFail(_("Unable to connect to %s") % "Mega-debrid.eu") + self.exitOnFail("Unable to connect to Mega-debrid.eu") self.logDebug("Old URL: %s" % pyfile.url) new_url = self.debridLink(pyfile.url) @@ -46,6 +48,7 @@ class MegaDebridEu(Hoster): pyfile.name = filename self.download(new_url, disposition=True) + def connectToApi(self): """ Connexion to the mega-debrid API @@ -54,14 +57,15 @@ class MegaDebridEu(Hoster): user, data = self.account.selectAccount() jsonResponse = self.load(self.API_URL, get={'action': 'connectUser', 'login': user, 'password': data['password']}) - response = json_loads(jsonResponse) + res = json_loads(jsonResponse) - if response['response_code'] == "ok": - self.token = response['token'] + if res['response_code'] == "ok": + self.token = res['token'] return True else: return False + def debridLink(self, linkToDebrid): """ Debrid a link @@ -69,21 +73,22 @@ class MegaDebridEu(Hoster): """ jsonResponse = self.load(self.API_URL, get={'action': 'getLink', 'token': self.token}, post={"link": linkToDebrid}) - response = json_loads(jsonResponse) + res = json_loads(jsonResponse) - if response['response_code'] == "ok": - debridedLink = response['debridLink'][1:-1] + if res['response_code'] == "ok": + debridedLink = res['debridLink'][1:-1] return debridedLink else: self.exitOnFail("Unable to debrid %s" % linkToDebrid) + def exitOnFail(self, msg): """ exit the plugin on fail case And display the reason of this failure """ if self.getConfig("unloadFailing"): - self.logError(msg) + self.logError(_(msg)) self.resetAccount() else: - self.fail(msg) + self.fail(_(msg)) |