From 0c1ba8c3a31c96c723702028bb683d26b97ee8bb Mon Sep 17 00:00:00 2001 From: Stefano Date: Fri, 26 Jul 2013 18:00:33 +0200 Subject: Fastfix: renamed and code cleanup (cherry picked from commit 5eb39bfefee30c4ff26d7aff680543c1d3611fba) --- module/plugins/hoster/Fastix.py | 68 --------------------------------------- module/plugins/hoster/FastixRu.py | 66 +++++++++++++++++++++++++++++++++++++ 2 files changed, 66 insertions(+), 68 deletions(-) delete mode 100644 module/plugins/hoster/Fastix.py create mode 100644 module/plugins/hoster/FastixRu.py (limited to 'module/plugins/hoster') diff --git a/module/plugins/hoster/Fastix.py b/module/plugins/hoster/Fastix.py deleted file mode 100644 index 5ebd63c44..000000000 --- a/module/plugins/hoster/Fastix.py +++ /dev/null @@ -1,68 +0,0 @@ -# -*- coding: utf-8 -*- - -import re -from urllib import unquote -from random import randrange -from module.plugins.Hoster import Hoster -from module.common.json_layer import json_loads -from module.utils import parseFileSize - - - -class Fastix(Hoster): - __name__ = "Fastix" - __version__ = "0.02" - __type__ = "hoster" - - __pattern__ = r"http?://.*fastix.ru\..*" - __description__ = """Fastix hoster plugin""" - __author_name__ = ("Massimo, Rosamilia") - __author_mail__ = ("max@spiritix.eu") - - def getFilename(self, url): - try: - name = unquote(url.rsplit("/", 1)[1]) - except IndexError: - name = "Unknown_Filename..." - if name.endswith("..."): #incomplete filename, append random stuff - name += "%s.tmp" % randrange(100, 999) - return name - - def init(self): - self.chunkLimit = 3 - self.resumeDownload = True - - def process(self, pyfile): - if not self.account: - self.fail("No Fastix account provided") - - self.logDebug("Old URL: %s" % pyfile.url) - if re.match(self.__pattern__, pyfile.url): - new_url = pyfile.url - else: - api_key = self.account.getAccountData(self.user) - api_key = api_key["api"] - url = "http://fastix.ru/api_v2/?apikey=%s&sub=getdirectlink&link=%s" % (api_key,pyfile.url) - page = self.load(url) - data = json_loads(page) - self.logDebug("Json data: %s" % str(data)) - if "error\":true" in page: - self.offline() - else: - new_url = data["downloadlink"] - - self.logDebug("New URL: %s" % new_url) - - if pyfile.name.startswith("http") or pyfile.name.startswith("Unknown"): - #only use when name wasnt already set - pyfile.name = self.getFilename(new_url) - - self.download(new_url, disposition=True) - - check = self.checkDownload({"error": "An error occurred while processing your request", - "empty": re.compile(r"^$")}) - - if check == "error": - self.retry(reason="An error occurred while generating link.", wait_time=60) - elif check == "empty": - self.retry(reason="Downloaded File was empty.", wait_time=60) diff --git a/module/plugins/hoster/FastixRu.py b/module/plugins/hoster/FastixRu.py new file mode 100644 index 000000000..4d3e7b93d --- /dev/null +++ b/module/plugins/hoster/FastixRu.py @@ -0,0 +1,66 @@ +# -*- coding: utf-8 -*- + +import re +from urllib import unquote +from random import randrange +from module.plugins.Hoster import Hoster +from module.common.json_layer import json_loads + + +class FastixRu(Hoster): + __name__ = "FastixRu" + __version__ = "0.02" + __type__ = "hoster" + __pattern__ = r"http?://.*fastix.ru\..*" + __description__ = """Fastix hoster plugin""" + __author_name__ = ("Massimo, Rosamilia") + __author_mail__ = ("max@spiritix.eu") + + def getFilename(self, url): + try: + name = unquote(url.rsplit("/", 1)[1]) + except IndexError: + name = "Unknown_Filename..." + if name.endswith("..."): # incomplete filename, append random stuff + name += "%s.tmp" % randrange(100, 999) + return name + + def init(self): + self.chunkLimit = 3 + self.resumeDownload = True + + def process(self, pyfile): + if not self.account: + self.logError(_("Please enter your %s account or deactivate this plugin") % "Fastix") + self.fail("No Fastix account provided") + + self.logDebug("Old URL: %s" % pyfile.url) + if re.match(self.__pattern__, pyfile.url): + new_url = pyfile.url + else: + api_key = self.account.getAccountData(self.user) + api_key = api_key["api"] + url = "http://fastix.ru/api_v2/?apikey=%s&sub=getdirectlink&link=%s" % (api_key, pyfile.url) + page = self.load(url) + data = json_loads(page) + self.logDebug("Json data: %s" % str(data)) + if "error\":true" in page: + self.offline() + else: + new_url = data["downloadlink"] + + self.logDebug("New URL: %s" % new_url) + + if pyfile.name.startswith("http") or pyfile.name.startswith("Unknown"): + #only use when name wasnt already set + pyfile.name = self.getFilename(new_url) + + self.download(new_url, disposition=True) + + check = self.checkDownload({"error": "An error occurred while processing your request", + "empty": re.compile(r"^$")}) + + if check == "error": + self.retry(reason="An error occurred while generating link.", wait_time=60) + elif check == "empty": + self.retry(reason="Downloaded File was empty.", wait_time=60) -- cgit v1.2.3