diff options
Diffstat (limited to 'module')
-rw-r--r-- | module/plugins/hooks/ExternalScripts.py | 1 | ||||
-rw-r--r-- | module/plugins/hoster/FastixRu.py | 6 | ||||
-rw-r--r-- | module/plugins/hoster/Keep2shareCC.py | 6 | ||||
-rw-r--r-- | module/plugins/hoster/NowDownloadEu.py | 22 | ||||
-rw-r--r-- | module/plugins/hoster/PutlockerCom.py | 10 | ||||
-rw-r--r-- | module/plugins/hoster/TusfilesNet.py | 8 |
6 files changed, 29 insertions, 24 deletions
diff --git a/module/plugins/hooks/ExternalScripts.py b/module/plugins/hooks/ExternalScripts.py index de8afda5f..b1a9420bb 100644 --- a/module/plugins/hooks/ExternalScripts.py +++ b/module/plugins/hooks/ExternalScripts.py @@ -73,6 +73,7 @@ class ExternalScripts(Hook): def callScript(self, script, *args): try: cmd = [script] + [str(x) if not isinstance(x, basestring) else x for x in args] + self.logDebug("Executing %(script)s: %(cmd)s" % {"script": os.path.abspath(script), "cmd": " ".join(cmd)}) #output goes to pyload subprocess.Popen(cmd, bufsize=-1) except Exception, e: diff --git a/module/plugins/hoster/FastixRu.py b/module/plugins/hoster/FastixRu.py index c2791c5d2..8805081c9 100644 --- a/module/plugins/hoster/FastixRu.py +++ b/module/plugins/hoster/FastixRu.py @@ -9,11 +9,11 @@ from module.common.json_layer import json_loads class FastixRu(Hoster): __name__ = "FastixRu" - __version__ = "0.03" + __version__ = "0.04" __type__ = "hoster" - __pattern__ = r"http?://.*fastix.ru\..*" + __pattern__ = r"http://(?:www\.)?fastix\.(ru|it)/file/(?P<ID>[a-zA-Z0-9]{24})" __description__ = """Fastix hoster plugin""" - __author_name__ = ("Massimo, Rosamilia") + __author_name__ = ("Massimo Rosamilia") __author_mail__ = ("max@spiritix.eu") def getFilename(self, url): diff --git a/module/plugins/hoster/Keep2shareCC.py b/module/plugins/hoster/Keep2shareCC.py index 2eada84ec..d2a13e35b 100644 --- a/module/plugins/hoster/Keep2shareCC.py +++ b/module/plugins/hoster/Keep2shareCC.py @@ -27,8 +27,8 @@ from module.plugins.internal.CaptchaService import ReCaptcha class Keep2shareCC(SimpleHoster): __name__ = "Keep2shareCC" __type__ = "hoster" - __pattern__ = r"http://(?:www\.)?(?:keep2share|k2s)\.cc/file/(?P<ID>.+)" - __version__ = "0.04" + __pattern__ = r"https?://(?:www\.)?(keep2share|k2s|keep2s)\.cc/file/(?P<ID>[a-zA-Z0-9]{13})" + __version__ = "0.05" __description__ = """Keep2share.cc hoster plugin""" __author_name__ = ("stickell") __author_mail__ = ("l.stickell@yahoo.it") @@ -51,7 +51,7 @@ class Keep2shareCC(SimpleHoster): m = re.search(self.WAIT_PATTERN, self.html) if m: wait_string = m.group(1) - wait_time = int(wait_string[0:2]) * 3600 + int(wait_string[3:5]) * 60 + int(wait_string[6:8]) + wait_time = int(wait_string[0:2]) * 60 * 60 + int(wait_string[3:5]) * 60 + int(wait_string[6:8]) self.setWait(wait_time, True) self.wait() self.process(self.pyfile) diff --git a/module/plugins/hoster/NowDownloadEu.py b/module/plugins/hoster/NowDownloadEu.py index 930efc23e..ff7d237f5 100644 --- a/module/plugins/hoster/NowDownloadEu.py +++ b/module/plugins/hoster/NowDownloadEu.py @@ -24,16 +24,18 @@ from module.utils import fixup class NowDownloadEu(SimpleHoster): __name__ = "NowDownloadEu" __type__ = "hoster" - __pattern__ = r"http://(www\.)?nowdownload\.(eu|co)/dl/(?P<ID>[a-z0-9]+)" - __version__ = "0.02" - __description__ = """NowDownloadEu""" - __author_name__ = ("godofdream") + __pattern__ = r"http://(?:www\.)?nowdownload\.(ch|eu|co)/(dl/|download\.php\?id=)(?P<ID>[a-zA-Z0-9]+)" + __version__ = "0.03" + __description__ = """NowDownloadCh""" + __author_name__ = ("godofdream", "Walter Purcaro") + __author_mail__ = ("", "vuolter@gmail.com") + FILE_INFO_PATTERN = r'Downloading</span> <br> (?P<N>.*) (?P<S>[0-9,.]+) (?P<U>[kKMG])i?B </h4>' FILE_OFFLINE_PATTERN = r'(This file does not exist!)' FILE_TOKEN_PATTERN = r'"(/api/token\.php\?token=[a-z0-9]+)"' FILE_CONTINUE_PATTERN = r'"(/dl2/[a-z0-9]+/[a-z0-9]+)"' FILE_WAIT_PATTERN = r'\.countdown\(\{until: \+(\d+),' - FILE_DOWNLOAD_LINK = r'"(http://f\d+\.nowdownload\.eu/dl/[a-z0-9]+/[a-z0-9]+/[^<>"]*?)"' + FILE_DOWNLOAD_LINK = r'"(http://f\d+\.nowdownload\.ch/dl/[a-z0-9]+/[a-z0-9]+/[^<>"]*?)"' FILE_NAME_REPLACEMENTS = [("&#?\w+;", fixup), (r'<[^>]*>', '')] @@ -44,19 +46,21 @@ class NowDownloadEu(SimpleHoster): def handleFree(self): tokenlink = re.search(self.FILE_TOKEN_PATTERN, self.html) continuelink = re.search(self.FILE_CONTINUE_PATTERN, self.html) - if (not tokenlink) or (not continuelink): + if not tokenlink or not continuelink: self.fail('Plugin out of Date') - wait = 60 found = re.search(self.FILE_WAIT_PATTERN, self.html) if found: wait = int(found.group(1)) + else + wait = 60 - self.html = self.load("http://www.nowdownload.eu" + str(tokenlink.group(1))) + baseurl = "http://www.nowdownload.ch" + self.html = self.load(baseurl + str(tokenlink.group(1))) self.setWait(wait) self.wait() - self.html = self.load("http://www.nowdownload.eu" + str(continuelink.group(1))) + self.html = self.load(baseurl + str(continuelink.group(1))) url = re.search(self.FILE_DOWNLOAD_LINK, self.html) if not url: diff --git a/module/plugins/hoster/PutlockerCom.py b/module/plugins/hoster/PutlockerCom.py index 7b9ac1f84..afe084028 100644 --- a/module/plugins/hoster/PutlockerCom.py +++ b/module/plugins/hoster/PutlockerCom.py @@ -26,8 +26,8 @@ from module.plugins.internal.SimpleHoster import SimpleHoster class PutlockerCom(SimpleHoster): __name__ = "PutlockerCom" __type__ = "hoster" - __pattern__ = r'http://(?:www\.)?putlocker\.com/(mobile/)?(file|embed)/(?P<ID>[A-Z0-9]+)' - __version__ = "0.31" + __pattern__ = r'http://(?:www\.)?putlocker\.com/(mobile/)?(file|embed)/(?P<ID>[a-zA-Z0-9]+)' + __version__ = "0.32" __description__ = """Putlocker.Com""" __author_name__ = ("jeix", "stickell", "Walter Purcaro") __author_mail__ = ("", "l.stickell@yahoo.it", "vuolter@gmail.com") @@ -58,9 +58,9 @@ class PutlockerCom(SimpleHoster): self.html = self.load(self.pyfile.url, post=post_data) if (">You have exceeded the daily stream limit for your country\\. You can wait until tomorrow" in self.html or "(>This content server has been temporarily disabled for upgrades|Try again soon\\. You can still download it below\\.<)" in self.html): - self.retry(wait_time=7200, reason="Download limit exceeded or server disabled") # 2 hours wait + self.retry(wait_time=60 * 60 * 2, reason="Download limit exceeded or server disabled") # 2 hours wait - patterns = (r'(/get_file\.php\?id=[A-Z0-9]+&key=[A-Za-z0-9=]+&original=1)', + patterns = (r'(/get_file\.php\?id=[A-Z0-9]+&key=[a-zA-Z0-9=]+&original=1)', r'(/get_file\.php\?download=[A-Z0-9]+&key=[a-z0-9]+)', r'(/get_file\.php\?download=[A-Z0-9]+&key=[a-z0-9]+&original=1)', r'<a href="/gopro\.php">Tired of ads and waiting\? Go Pro!</a>[\t\n\rn ]+</div>[\t\n\rn ]+<a href="(/.*?)"') @@ -69,7 +69,7 @@ class PutlockerCom(SimpleHoster): if link: break else: - link = re.search(r"playlist: '(/get_file\.php\?stream=[A-Za-z0-9=]+)'", self.html) + link = re.search(r"playlist: '(/get_file\.php\?stream=[a-zA-Z0-9=]+)'", self.html) if link: self.html = self.load("http://www.%s%s" % (self.HOSTER_NAME, link.group(1))) link = re.search(r'media:content url="(http://.*?)"', self.html) diff --git a/module/plugins/hoster/TusfilesNet.py b/module/plugins/hoster/TusfilesNet.py index e4a64cfdc..4db551ee4 100644 --- a/module/plugins/hoster/TusfilesNet.py +++ b/module/plugins/hoster/TusfilesNet.py @@ -5,11 +5,11 @@ from module.plugins.hoster.XFileSharingPro import XFileSharingPro, create_getInf class TusfilesNet(XFileSharingPro): __name__ = "TusfilesNet" __type__ = "hoster" - __pattern__ = r"http://(www\.)?tusfiles\.net/\w{12}" - __version__ = "0.01" + __pattern__ = r"http://(?:www\.)?tusfiles\.net/(?P<ID>[a-zA-Z0-9]{12})" + __version__ = "0.02" __description__ = """Tusfiles.net hoster plugin""" - __author_name__ = ("stickell") - __author_mail__ = ("l.stickell@yahoo.it") + __author_name__ = ("stickell", "Walter Purcaro") + __author_mail__ = ("l.stickell@yahoo.it", "vuolter@gmail.com") FILE_INFO_PATTERN = r'<li>(?P<N>[^<]+)</li>\s+<li><b>Size:</b> <small>(?P<S>[\d.]+) (?P<U>\w+)</small></li>' FILE_OFFLINE_PATTERN = r'The file you were looking for could not be found' |