From 0fd68d59c33d280a7e039d05900583f0ded824ca Mon Sep 17 00:00:00 2001 From: Nitzo Date: Sun, 1 May 2016 03:36:40 +0300 Subject: [TurbobitNet] fix #2445 --- module/plugins/accounts/TurbobitNet.py | 45 ++++++++++++++++++++++++++-------- 1 file changed, 35 insertions(+), 10 deletions(-) (limited to 'module/plugins/accounts') diff --git a/module/plugins/accounts/TurbobitNet.py b/module/plugins/accounts/TurbobitNet.py index da183bebe..735fe1673 100644 --- a/module/plugins/accounts/TurbobitNet.py +++ b/module/plugins/accounts/TurbobitNet.py @@ -4,24 +4,27 @@ import re import time from module.plugins.internal.Account import Account -from module.plugins.internal.misc import set_cookie +from module.plugins.internal.misc import parse_html_form, set_cookie class TurbobitNet(Account): __name__ = "TurbobitNet" __type__ = "account" - __version__ = "0.09" + __version__ = "0.10" __status__ = "testing" __description__ = """TurbobitNet account plugin""" __license__ = "GPLv3" - __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + __authors__ = [("zoidberg", "zoidberg@mujmail.cz" ), + ("GammaC0de", "nitzo2001[AT]yahoo[DOT]com")] + + LOGIN_FAIL_PATTERN = r'>(?:E-Mail address appears to be invalid\. Please try again|Incorrect login or password)' def grab_info(self, user, password, data): - html = self.load("http://turbobit.net") + html = self.load("http://turbobit.net/") - m = re.search(r'Turbo Access to ([\d.]+)', html) + m = re.search(r'>Turbo access till ([\d.]+)<', html) if m is not None: premium = True validuntil = time.mktime(time.strptime(m.group(1), "%d.%m.%Y")) @@ -35,10 +38,32 @@ class TurbobitNet(Account): def signin(self, user, password, data): set_cookie(self.req.cj, "turbobit.net", "user_lang", "en") - html = self.load("http://turbobit.net/user/login", - post={"user[login]" : user, - "user[pass]" : password, - "user[submit]": "Login"}) + self.data = self.load("http://turbobit.net/login") + + if "' in html: + self.data = self.load("http://turbobit.net/user/login", post=inputs) + + if "Please enter the captcha code." in self.data: + self.fail_login(_("Logging in with captcha is not supported, please disable catcha in turbobit's account settings")) + + else: + self.fail_login(_("Unknown response")) -- cgit v1.2.3