diff options
Diffstat (limited to 'module/plugins/hoster/CzshareCom.py')
-rw-r--r-- | module/plugins/hoster/CzshareCom.py | 26 |
1 files changed, 20 insertions, 6 deletions
diff --git a/module/plugins/hoster/CzshareCom.py b/module/plugins/hoster/CzshareCom.py index 0ef9c267c..538e3ed86 100644 --- a/module/plugins/hoster/CzshareCom.py +++ b/module/plugins/hoster/CzshareCom.py @@ -45,7 +45,7 @@ class CzshareCom(SimpleHoster): __name__ = "CzshareCom" __type__ = "hoster" __pattern__ = r"http://(\w*\.)*czshare\.(com|cz)/(\d+/|download.php\?).*" - __version__ = "0.86" + __version__ = "0.88" __description__ = """CZshare.com""" __author_name__ = ("zoidberg") @@ -62,7 +62,7 @@ class CzshareCom(SimpleHoster): USER_CREDIT_PATTERN = r'<div class="credit">\s*kredit: <strong>([0-9., ]+)([kKMG]i?B)</strong>\s*</div><!-- .credit -->' def setup(self): - self.resumeDownload = self.multiDL = True if self.premium else False + self.multiDL = self.resumeDownload = True if self.premium else False self.chunkLimit = 1 def process(self, pyfile): @@ -140,16 +140,29 @@ class CzshareCom(SimpleHoster): inputs['captchastring2'] = self.decryptCaptcha(captcha_url) self.logDebug('CAPTCHA_URL:' + captcha_url + ' CAPTCHA:' + inputs['captchastring2']) + self.html = self.load(parsed_url, cookies=True, post=inputs) + + found = re.search("countdown_number = (\d+);", self.html) + self.setWait(int(found.group(1)) if found else 50) + # download the file, destination is determined by pyLoad - self.download(parsed_url, cookies=True, post=inputs) + self.logDebug("WAIT URL", self.req.lastEffectiveURL) + found = re.search("free_wait.php\?server=(.*?)&(.*)", self.req.lastEffectiveURL) + if not found: + raise PluginParseError('Download URL') + url = "http://%s/download.php?%s" % (found.group(1), found.group(2)) + + self.wait() + self.multiDL = True + self.download(url) def checkDownloadedFile(self): # check download check = self.checkDownload({ "tempoffline": re.compile(r"^Soubor je do.asn. nedostupn.$"), "multi_dl": re.compile(self.MULTIDL_PATTERN), - "captcha_err": re.compile(self.FREE_FORM_PATTERN) + "captcha_err": "<li>Zadaný ověřovací kód nesouhlasí!</li>" }) if check == "tempoffline": @@ -160,7 +173,8 @@ class CzshareCom(SimpleHoster): self.invalidCaptcha() self.retry() - def waitForFreeSlot(self): - self.setWait(900, True) + def waitForFreeSlot(self, wait_time = 300): + self.multiDL = False + self.setWait(wait_time, True) self.wait() self.retry()
\ No newline at end of file |