diff options
-rw-r--r-- | module/plugins/hoster/CoolshareCz.py | 7 | ||||
-rw-r--r-- | module/plugins/hoster/CzshareCom.py | 24 | ||||
-rw-r--r-- | module/plugins/hoster/WarserverCz.py | 34 |
3 files changed, 57 insertions, 8 deletions
diff --git a/module/plugins/hoster/CoolshareCz.py b/module/plugins/hoster/CoolshareCz.py index 63bc4cf37..f187b4816 100644 --- a/module/plugins/hoster/CoolshareCz.py +++ b/module/plugins/hoster/CoolshareCz.py @@ -24,21 +24,22 @@ class CoolshareCz(SimpleHoster): __name__ = "CoolshareCz" __type__ = "hoster" __pattern__ = r"http://(?:\w*\.)?coolshare.cz/stahnout/(?P<ID>\d+)/.+" - __version__ = "0.1" + __version__ = "0.11" __description__ = """CoolShare.cz""" __author_name__ = ("zoidberg") - FILE_NAME_PATTERN = r'<h1>(?P<N>[^<]+)</h1>' + FILE_NAME_PATTERN = r'<h1.*?>(?P<N>[^<]+)</h1>' FILE_SIZE_PATTERN = r'<li>Velikost: <strong>(?P<S>[^<]+)</strong>' FILE_OFFLINE_PATTERN = r'<h1>Soubor nenalezen</h1>' PREMIUM_URL_PATTERN = r'<div class="cleaner oddelovac"><!-- --></div>\s*<p><a href="([^"]*)"' + DOMAIN = "http://csd01.coolshare.cz" SH_CHECK_TRAFFIC = True def handleFree(self): try: - self.download("http://csd01.coolshare.cz/dwn-free.php?fid=%s" % self.file_info['ID']) + self.download("%s/dwn-free.php?fid=%s" % (self.DOMAIN, self.file_info['ID'])) except BadHeader, e: if e.code == 403: self.setWait(300, True) diff --git a/module/plugins/hoster/CzshareCom.py b/module/plugins/hoster/CzshareCom.py index 71c698811..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.87" + __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,9 +140,22 @@ 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 @@ -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 diff --git a/module/plugins/hoster/WarserverCz.py b/module/plugins/hoster/WarserverCz.py new file mode 100644 index 000000000..4f0de8425 --- /dev/null +++ b/module/plugins/hoster/WarserverCz.py @@ -0,0 +1,34 @@ +# -*- coding: utf-8 -*- +""" + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, + or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + See the GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, see <http://www.gnu.org/licenses/>. + + @author: zoidberg +""" + +import re +from module.plugins.hoster.CoolshareCz import CoolshareCz +from module.plugins.internal.SimpleHoster import create_getInfo + +class WarserverCz(CoolshareCz): + __name__ = "WarserverCz" + __type__ = "hoster" + __pattern__ = r"http://(?:\w*\.)?warserver.cz/stahnout/(?P<ID>\d+)/.+" + __version__ = "0.1" + __description__ = """Warserver.cz""" + __author_name__ = ("zoidberg") + + PREMIUM_URL_PATTERN = r'<a href="(http://s01.warserver.cz/dwn-premium.php.*?)"' + DOMAIN = "http://s01.warserver.cz" + +getInfo = create_getInfo(WarserverCz)
\ No newline at end of file |