diff options
-rw-r--r-- | module/plugins/hoster/CzshareCom.py | 6 | ||||
-rw-r--r-- | module/plugins/hoster/FastshareCz.py | 6 | ||||
-rw-r--r-- | module/plugins/hoster/FileserveCom.py | 8 | ||||
-rw-r--r-- | module/plugins/hoster/MegasharesCom.py | 4 | ||||
-rw-r--r-- | module/plugins/hoster/ShareonlineBiz.py | 6 | ||||
-rw-r--r-- | module/plugins/hoster/UnibytesCom.py | 4 | ||||
-rw-r--r-- | module/plugins/internal/Hoster.py | 6 | ||||
-rw-r--r-- | module/plugins/internal/MultiHoster.py | 6 | ||||
-rw-r--r-- | module/plugins/internal/Plugin.py | 4 | ||||
-rw-r--r-- | module/plugins/internal/SimpleCrypter.py | 2 | ||||
-rw-r--r-- | module/plugins/internal/SimpleHoster.py | 12 |
11 files changed, 34 insertions, 30 deletions
diff --git a/module/plugins/hoster/CzshareCom.py b/module/plugins/hoster/CzshareCom.py index d678f25fa..75fcf39d8 100644 --- a/module/plugins/hoster/CzshareCom.py +++ b/module/plugins/hoster/CzshareCom.py @@ -12,7 +12,7 @@ from module.utils import parseFileSize as parse_size class CzshareCom(SimpleHoster): __name__ = "CzshareCom" __type__ = "hoster" - __version__ = "1.04" + __version__ = "1.05" __status__ = "testing" __pattern__ = r'http://(?:www\.)?(czshare|sdilej)\.(com|cz)/(\d+/|download\.php\?).+' @@ -73,7 +73,7 @@ class CzshareCom(SimpleHoster): except Exception, e: self.log_error(e) - self.restart() + self.restart(premium=False) #: Download the file, destination is determined by pyLoad self.download("http://sdilej.cz/profi_down.php", post=inputs, disposition=True) @@ -145,7 +145,7 @@ class CzshareCom(SimpleHoster): self.fail(_("File not available - try later")) elif check == "credit": - self.restart() + self.restart(premium=False) elif check == "multi-dl": self.wait(5 * 60, 12, _("Download limit reached")) diff --git a/module/plugins/hoster/FastshareCz.py b/module/plugins/hoster/FastshareCz.py index b05edfb27..7c3294632 100644 --- a/module/plugins/hoster/FastshareCz.py +++ b/module/plugins/hoster/FastshareCz.py @@ -9,7 +9,7 @@ from module.plugins.internal.SimpleHoster import SimpleHoster, create_getInfo class FastshareCz(SimpleHoster): __name__ = "FastshareCz" __type__ = "hoster" - __version__ = "0.35" + __version__ = "0.36" __status__ = "testing" __pattern__ = r'http://(?:www\.)?fastshare\.cz/\d+/.+' @@ -42,7 +42,7 @@ class FastshareCz(SimpleHoster): if self.CREDIT_ERROR in self.html: errmsg = self.info['error'] = _("Not enough traffic left") self.log_warning(errmsg) - self.restart() + self.restart(premium=False) self.info.pop('error', None) @@ -73,7 +73,7 @@ class FastshareCz(SimpleHoster): self.retry_captcha() elif check == "credit": - self.restart() + self.restart(premium=False) return super(FastshareCz, self).check_download() diff --git a/module/plugins/hoster/FileserveCom.py b/module/plugins/hoster/FileserveCom.py index 277d4f2a8..fb1b7c631 100644 --- a/module/plugins/hoster/FileserveCom.py +++ b/module/plugins/hoster/FileserveCom.py @@ -34,7 +34,7 @@ def check_file(plugin, urls): class FileserveCom(Hoster): __name__ = "FileserveCom" __type__ = "hoster" - __version__ = "0.61" + __version__ = "0.62" __status__ = "testing" __pattern__ = r'http://(?:www\.)?fileserve\.com/file/(?P<ID>[^/]+)' @@ -190,12 +190,16 @@ class FileserveCom(Hoster): res = json_loads(res) if res['error_code'] == "302": premium_url = res['next'] + elif res['error_code'] in ["305", "500"]: self.temp_offline() + elif res['error_code'] in ["403", "605"]: - self.restart() + self.restart(premium=False) + elif res['error_code'] in ["606", "607", "608"]: self.offline() + else: self.log_error(res['error_code'], res['error_message']) diff --git a/module/plugins/hoster/MegasharesCom.py b/module/plugins/hoster/MegasharesCom.py index b183b882d..7d7d8adb5 100644 --- a/module/plugins/hoster/MegasharesCom.py +++ b/module/plugins/hoster/MegasharesCom.py @@ -9,7 +9,7 @@ from module.plugins.internal.SimpleHoster import SimpleHoster, create_getInfo class MegasharesCom(SimpleHoster): __name__ = "MegasharesCom" __type__ = "hoster" - __version__ = "0.32" + __version__ = "0.33" __status__ = "testing" __pattern__ = r'http://(?:www\.)?(d\d{2}\.)?megashares\.com/((index\.php)?\?d\d{2}=|dl/)\w+' @@ -70,7 +70,7 @@ class MegasharesCom(SimpleHoster): if 'Thank you for reactivating your passport' in res: self.captcha.correct() - self.restart(premium=True) + self.restart() else: self.retry_captcha(msg=_("Failed to reactivate passport")) diff --git a/module/plugins/hoster/ShareonlineBiz.py b/module/plugins/hoster/ShareonlineBiz.py index 96fec2b48..3e98fc554 100644 --- a/module/plugins/hoster/ShareonlineBiz.py +++ b/module/plugins/hoster/ShareonlineBiz.py @@ -12,7 +12,7 @@ from module.plugins.internal.SimpleHoster import SimpleHoster, create_getInfo class ShareonlineBiz(SimpleHoster): __name__ = "ShareonlineBiz" __type__ = "hoster" - __version__ = "0.59" + __version__ = "0.60" __status__ = "testing" __pattern__ = r'https?://(?:www\.)?(share-online\.biz|egoshare\.com)/(download\.php\?id=|dl/)(?P<ID>\w+)' @@ -174,11 +174,11 @@ class ShareonlineBiz(SimpleHoster): elif 'slot' in errmsg: self.wait(3600, reconnect=True) - self.restart(errmsg, premium=True) + self.restart(errmsg) else: self.wait(60, reconnect=True) - self.restart(errmsg, premium=True) + self.restart(errmsg) getInfo = create_getInfo(ShareonlineBiz) diff --git a/module/plugins/hoster/UnibytesCom.py b/module/plugins/hoster/UnibytesCom.py index 6af02438f..15b553162 100644 --- a/module/plugins/hoster/UnibytesCom.py +++ b/module/plugins/hoster/UnibytesCom.py @@ -10,7 +10,7 @@ from module.plugins.internal.SimpleHoster import SimpleHoster, create_getInfo class UnibytesCom(SimpleHoster): __name__ = "UnibytesCom" __type__ = "hoster" - __version__ = "0.15" + __version__ = "0.16" __status__ = "testing" __pattern__ = r'https?://(?:www\.)?unibytes\.com/[\w .-]{11}B' @@ -46,7 +46,7 @@ class UnibytesCom(SimpleHoster): if '>Somebody else is already downloading using your IP-address<' in self.html: self.wait(10 * 60, True) - self.restart(premium=True) + self.restart() if post_data['step'] == "last": m = re.search(self.LINK_FREE_PATTERN, self.html) diff --git a/module/plugins/internal/Hoster.py b/module/plugins/internal/Hoster.py index 26da436a5..86b684414 100644 --- a/module/plugins/internal/Hoster.py +++ b/module/plugins/internal/Hoster.py @@ -13,7 +13,7 @@ from module.utils import fs_decode, fs_encode, save_join as fs_join, save_path a class Hoster(Base): __name__ = "Hoster" __type__ = "hoster" - __version__ = "0.34" + __version__ = "0.35" __status__ = "testing" __pattern__ = r'^unmatchable$' @@ -87,13 +87,13 @@ class Hoster(Base): except Fail, e: #@TODO: Move to PluginThread in 0.4.10 if self.get_config('fallback_premium', True) and self.premium: self.log_warning(_("Premium download failed"), e) - self.restart() + self.restart(premium=False) else: raise Fail(e) - def restart(self, msg="", premium=False): + def restart(self, msg="", premium=True): if not msg: msg = _("Simple restart") if premium else _("Fallback to free download") diff --git a/module/plugins/internal/MultiHoster.py b/module/plugins/internal/MultiHoster.py index d7d3c5ccd..f5c3d091d 100644 --- a/module/plugins/internal/MultiHoster.py +++ b/module/plugins/internal/MultiHoster.py @@ -9,7 +9,7 @@ from module.plugins.internal.SimpleHoster import SimpleHoster, create_getInfo, r class MultiHoster(SimpleHoster): __name__ = "MultiHoster" __type__ = "hoster" - __version__ = "0.52" + __version__ = "0.53" __status__ = "testing" __pattern__ = r'^unmatchable$' @@ -102,7 +102,7 @@ class MultiHoster(SimpleHoster): except Fail, e: #@TODO: Move to PluginThread in 0.4.10 if self.premium: self.log_warning(_("Premium download failed")) - self.restart() + self.restart(premium=False) elif self.get_config("revertfailed", True) \ and "new_module" in self.pyload.pluginManager.hosterPlugins[self.__name__]: @@ -118,7 +118,7 @@ class MultiHoster(SimpleHoster): hdict['new_module'] = tmp_module hdict['new_name'] = tmp_name - self.restart(_("Revert to original hoster plugin"), premium=True) + self.restart(_("Revert to original hoster plugin")) else: raise Fail(encode(e)) #@TODO: Remove `encode` in 0.4.10 diff --git a/module/plugins/internal/Plugin.py b/module/plugins/internal/Plugin.py index 6d94ca1e4..3b1f3575f 100644 --- a/module/plugins/internal/Plugin.py +++ b/module/plugins/internal/Plugin.py @@ -61,7 +61,7 @@ def fixurl(url, unquote=None): unquote = newurl == url newurl = html_unescape(newurl.decode('unicode-escape')) - newurl = re.sub(r'[^:]/{2,}', '/', newurl).strip().lstrip('.') + newurl = re.sub(r'(?<!:)/{2,}', '/', newurl).strip().lstrip('.') if not unquote: newurl = urllib.quote(newurl) @@ -228,7 +228,7 @@ def chunks(iterable, size): class Plugin(object): __name__ = "Plugin" __type__ = "plugin" - __version__ = "0.44" + __version__ = "0.45" __status__ = "testing" __pattern__ = r'^unmatchable$' diff --git a/module/plugins/internal/SimpleCrypter.py b/module/plugins/internal/SimpleCrypter.py index a6feb8fbe..30b8ebfb0 100644 --- a/module/plugins/internal/SimpleCrypter.py +++ b/module/plugins/internal/SimpleCrypter.py @@ -10,7 +10,7 @@ from module.plugins.internal.SimpleHoster import SimpleHoster, create_getInfo class SimpleCrypter(Crypter, SimpleHoster): __name__ = "SimpleCrypter" __type__ = "crypter" - __version__ = "0.64" + __version__ = "0.65" __status__ = "testing" __pattern__ = r'^unmatchable$' diff --git a/module/plugins/internal/SimpleHoster.py b/module/plugins/internal/SimpleHoster.py index e5526a7bd..fb621a278 100644 --- a/module/plugins/internal/SimpleHoster.py +++ b/module/plugins/internal/SimpleHoster.py @@ -16,7 +16,7 @@ from module.utils import fixup, fs_encode, parseFileSize as parse_size class SimpleHoster(Hoster): __name__ = "SimpleHoster" __type__ = "hoster" - __version__ = "1.93" + __version__ = "1.94" __status__ = "testing" __pattern__ = r'^unmatchable$' @@ -315,7 +315,7 @@ class SimpleHoster(Hoster): self.log_warning(_("Check result: ") + errmsg, _("Waiting 1 minute and retry")) self.wait(60, reconnect=True) - self.restart(errmsg, premium=True) + self.restart(errmsg) else: if self.CHECK_FILE: self.log_debug("Using custom check rules...") @@ -354,7 +354,7 @@ class SimpleHoster(Hoster): wait_time = parse_time(errmsg) self.wait(wait_time, reconnect=wait_time > 300) - self.restart(_("Download limit exceeded"), premium=True) + self.restart(_("Download limit exceeded")) if self.HAPPY_HOUR_PATTERN and re.search(self.HAPPY_HOUR_PATTERN, self.html): self.multiDL = True @@ -374,7 +374,7 @@ class SimpleHoster(Hoster): if re.search('limit|wait|slot', errmsg, re.I): wait_time = parse_time(errmsg) self.wait(wait_time, reconnect=wait_time > 300) - self.restart(_("Download limit exceeded"), premium=True) + self.restart(_("Download limit exceeded")) elif re.search('country|ip|region|nation', errmsg, re.I): self.fail(_("Connection from your current IP address is not allowed")) @@ -402,7 +402,7 @@ class SimpleHoster(Hoster): else: self.wait(60, reconnect=True) - self.restart(errmsg, premium=True) + self.restart(errmsg) elif self.WAIT_PATTERN: m = re.search(self.WAIT_PATTERN, self.html) @@ -516,7 +516,7 @@ class SimpleHoster(Hoster): def handle_premium(self, pyfile): if not self.LINK_PREMIUM_PATTERN: self.log_error(_("Premium download not implemented")) - self.restart() + self.restart(premium=False) m = re.search(self.LINK_PREMIUM_PATTERN, self.html) if m is None: |