From 3afabe7aa27618fcaee006a3319f7964867a293a Mon Sep 17 00:00:00 2001 From: Walter Purcaro Date: Mon, 1 Jun 2015 19:46:38 +0200 Subject: [WorldbytezCom] Account --- module/plugins/accounts/WorldbytezCom.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 module/plugins/accounts/WorldbytezCom.py (limited to 'module/plugins/accounts') diff --git a/module/plugins/accounts/WorldbytezCom.py b/module/plugins/accounts/WorldbytezCom.py new file mode 100644 index 000000000..a90dbea56 --- /dev/null +++ b/module/plugins/accounts/WorldbytezCom.py @@ -0,0 +1,16 @@ +# -*- coding: utf-8 -*- + +from module.plugins.internal.XFSAccount import XFSAccount + + +class WorldbytezCom(XFSAccount): + __name__ = "WorldbytezCom" + __type__ = "account" + __version__ = "0.01" + + __description__ = """Worldbytez.com account plugin""" + __license__ = "GPLv3" + __authors__ = [("Walter Purcaro", "vuolter@gmail.com")] + + + HOSTER_DOMAIN = "worldbytez.com" -- cgit v1.2.3 From f8ee62fa313beddc7af46dc1c361adb8577d0fa4 Mon Sep 17 00:00:00 2001 From: Walter Purcaro Date: Tue, 2 Jun 2015 03:26:41 +0200 Subject: Fix https://github.com/pyload/pyload/issues/1446 --- module/plugins/accounts/RapidgatorNet.py | 2 +- module/plugins/accounts/WebshareCz.py | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to 'module/plugins/accounts') diff --git a/module/plugins/accounts/RapidgatorNet.py b/module/plugins/accounts/RapidgatorNet.py index 23d7aff53..5ff30e061 100644 --- a/module/plugins/accounts/RapidgatorNet.py +++ b/module/plugins/accounts/RapidgatorNet.py @@ -24,7 +24,7 @@ class RapidgatorNet(Account): sid = None try: - sid = self.getAccountData(user).get('sid') + sid = self.getAccountData(user).get('sid', None) assert sid html = req.load("%s/info" % self.API_URL, get={'sid': sid}) diff --git a/module/plugins/accounts/WebshareCz.py b/module/plugins/accounts/WebshareCz.py index f032e2317..8c53dd41e 100644 --- a/module/plugins/accounts/WebshareCz.py +++ b/module/plugins/accounts/WebshareCz.py @@ -12,7 +12,7 @@ from module.plugins.Account import Account class WebshareCz(Account): __name__ = "WebshareCz" __type__ = "account" - __version__ = "0.07" + __version__ = "0.08" __description__ = """Webshare.cz account plugin""" __license__ = "GPLv3" @@ -26,7 +26,7 @@ class WebshareCz(Account): def loadAccountInfo(self, user, req): html = req.load("https://webshare.cz/api/user_data/", - post={'wst': self.infos['wst']}, + post={'wst': self.getAccountData(user).get('wst', None)}, decode=True) self.logDebug("Response: " + html) @@ -65,4 +65,4 @@ class WebshareCz(Account): if "OK" not in login: self.wrongPassword() - self.infos['wst'] = re.search('(.+)', login).group(1) + data['wst'] = re.search('(.+)', login).group(1) -- cgit v1.2.3 From a1b105f5e74df07abeab46a29de16416954fe4b8 Mon Sep 17 00:00:00 2001 From: Walter Purcaro Date: Tue, 2 Jun 2015 03:42:55 +0200 Subject: Small code cosmetics --- module/plugins/accounts/AlldebridCom.py | 4 +-- module/plugins/accounts/NoPremiumPl.py | 52 +++++++++++++++---------------- module/plugins/accounts/RapideoPl.py | 53 ++++++++++++++++---------------- module/plugins/accounts/RealdebridCom.py | 4 +-- 4 files changed, 57 insertions(+), 56 deletions(-) (limited to 'module/plugins/accounts') diff --git a/module/plugins/accounts/AlldebridCom.py b/module/plugins/accounts/AlldebridCom.py index f9c1f2ca6..d09086907 100644 --- a/module/plugins/accounts/AlldebridCom.py +++ b/module/plugins/accounts/AlldebridCom.py @@ -2,7 +2,7 @@ import re import time -import xml.dom.minidom as dom +import xml.dom.minidom from BeautifulSoup import BeautifulSoup @@ -43,7 +43,7 @@ class AlldebridCom(Account): self.logDebug(html) - xml = dom.parseString(html) + xml = xml.dom.minidom.parseString(html) exp_time = time.time() + int(xml.getElementsByTagName("date")[0].childNodes[0].nodeValue) * 24 * 60 * 60 account_info = {"validuntil": exp_time, "trafficleft": -1} diff --git a/module/plugins/accounts/NoPremiumPl.py b/module/plugins/accounts/NoPremiumPl.py index 7e3f757d3..6c034b31f 100644 --- a/module/plugins/accounts/NoPremiumPl.py +++ b/module/plugins/accounts/NoPremiumPl.py @@ -4,37 +4,37 @@ import datetime import hashlib import time +from module.common.json_layer import json_loads from module.plugins.Account import Account -from module.common.json_layer import json_loads as loads class NoPremiumPl(Account): - __name__ = "NoPremiumPl" + __name__ = "NoPremiumPl" + __type__ = "account" __version__ = "0.01" - __type__ = "account" + __description__ = "NoPremium.pl account plugin" - __license__ = "GPLv3" - __authors__ = [("goddie", "dev@nopremium.pl")] + __license__ = "GPLv3" + __authors__ = [("goddie", "dev@nopremium.pl")] - _api_url = "http://crypt.nopremium.pl" - _api_query = { - "site": "nopremium", - "username": "", - "password": "", - "output": "json", - "loc": "1", - "info": "1" - } + API_URL = "http://crypt.nopremium.pl" + API_QUERY = {'site' : "nopremium", + 'username': "" , + 'password': "" , + 'output' : "json" , + 'loc' : "1" , + 'info' : "1" } _req = None _usr = None _pwd = None + def loadAccountInfo(self, name, req): self._req = req try: - result = loads(self.runAuthQuery()) + result = json_loads(self.runAuthQuery()) except Exception: # todo: return or let it be thrown? return @@ -45,13 +45,13 @@ class NoPremiumPl(Account): if "expire" in result.keys() and result["expire"]: premium = True valid_untill = time.mktime(datetime.datetime.fromtimestamp(int(result["expire"])).timetuple()) + traffic_left = result["balance"] * 1024 - return ({ - "validuntil": valid_untill, - "trafficleft": traffic_left, - "premium": premium - }) + return {'validuntil' : valid_untill, + 'trafficleft': traffic_left, + 'premium' : premium } + def login(self, user, data, req): self._usr = user @@ -59,23 +59,23 @@ class NoPremiumPl(Account): self._req = req try: - response = loads(self.runAuthQuery()) + response = json_loads(self.runAuthQuery()) except Exception: self.wrongPassword() if "errno" in response.keys(): self.wrongPassword() + data['usr'] = self._usr data['pwd'] = self._pwd + def createAuthQuery(self): - query = self._api_query + query = self.API_QUERY query["username"] = self._usr query["password"] = self._pwd - return query - def runAuthQuery(self): - data = self._req.load(self._api_url, post=self.createAuthQuery()) - return data \ No newline at end of file + def runAuthQuery(self): + return self._req.load(self.API_URL, post=self.createAuthQuery()) diff --git a/module/plugins/accounts/RapideoPl.py b/module/plugins/accounts/RapideoPl.py index 3e9d52fe8..92736cba0 100644 --- a/module/plugins/accounts/RapideoPl.py +++ b/module/plugins/accounts/RapideoPl.py @@ -4,77 +4,78 @@ import datetime import hashlib import time +from module.common.json_layer import json_loads from module.plugins.Account import Account -from module.common.json_layer import json_loads as loads class RapideoPl(Account): - __name__ = "RapideoPl" + __name__ = "RapideoPl" + __type__ = "account" __version__ = "0.01" - __type__ = "account" + __description__ = "Rapideo.pl account plugin" - __license__ = "GPLv3" - __authors__ = [("goddie", "dev@rapideo.pl")] + __license__ = "GPLv3" + __authors__ = [("goddie", "dev@rapideo.pl")] - _api_url = "http://enc.rapideo.pl" - _api_query = { - "site": "newrd", - "username": "", - "password": "", - "output": "json", - "loc": "1", - "info": "1" - } + API_URL = "http://enc.rapideo.pl" + API_QUERY = {'site' : "newrd", + 'username': "" , + 'password': "" , + 'output' : "json" , + 'loc' : "1" , + 'info' : "1" } _req = None _usr = None _pwd = None + def loadAccountInfo(self, name, req): self._req = req try: - result = loads(self.runAuthQuery()) + result = json_loads(self.runAuthQuery()) except Exception: # todo: return or let it be thrown? return premium = False valid_untill = -1 + if "expire" in result.keys() and result["expire"]: premium = True valid_untill = time.mktime(datetime.datetime.fromtimestamp(int(result["expire"])).timetuple()) traffic_left = result["balance"] - return ({ - "validuntil": valid_untill, - "trafficleft": traffic_left, - "premium": premium - }) + return {'validuntil' : valid_untill, + 'trafficleft': traffic_left, + 'premium' : premium } + def login(self, user, data, req): self._usr = user self._pwd = hashlib.md5(data["password"]).hexdigest() self._req = req + try: - response = loads(self.runAuthQuery()) + response = json_loads(self.runAuthQuery()) except Exception: self.wrongPassword() if "errno" in response.keys(): self.wrongPassword() + data['usr'] = self._usr data['pwd'] = self._pwd + def createAuthQuery(self): - query = self._api_query + query = self.API_QUERY query["username"] = self._usr query["password"] = self._pwd - return query - def runAuthQuery(self): - data = self._req.load(self._api_url, post=self.createAuthQuery()) - return data \ No newline at end of file + def runAuthQuery(self): + return self._req.load(self.API_URL, post=self.createAuthQuery()) diff --git a/module/plugins/accounts/RealdebridCom.py b/module/plugins/accounts/RealdebridCom.py index 41d8a0975..ad2975aa9 100644 --- a/module/plugins/accounts/RealdebridCom.py +++ b/module/plugins/accounts/RealdebridCom.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- -import xml.dom.minidom as dom +import xml.dom.minidom from module.plugins.Account import Account @@ -19,7 +19,7 @@ class RealdebridCom(Account): if self.pin_code: return {"premium": False} html = req.load("https://real-debrid.com/api/account.php") - xml = dom.parseString(html) + xml = xml.dom.minidom.parseString(html) account_info = {"validuntil": float(xml.getElementsByTagName("expiration")[0].childNodes[0].nodeValue), "trafficleft": -1} -- cgit v1.2.3 From 10fe56a70bef797ec03c044b4f026985860df9d6 Mon Sep 17 00:00:00 2001 From: Walter Purcaro Date: Tue, 2 Jun 2015 05:45:46 +0200 Subject: Fix https://github.com/pyload/pyload/issues/1442 --- module/plugins/accounts/PremiumizeMe.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'module/plugins/accounts') diff --git a/module/plugins/accounts/PremiumizeMe.py b/module/plugins/accounts/PremiumizeMe.py index 7d061ec2d..01ac36ab6 100644 --- a/module/plugins/accounts/PremiumizeMe.py +++ b/module/plugins/accounts/PremiumizeMe.py @@ -1,20 +1,27 @@ # -*- coding: utf-8 -*- -from module.plugins.Account import Account +import pycurl from module.common.json_layer import json_loads +from module.plugins.Account import Account class PremiumizeMe(Account): __name__ = "PremiumizeMe" __type__ = "account" - __version__ = "0.13" + __version__ = "0.14" __description__ = """Premiumize.me account plugin""" __license__ = "GPLv3" __authors__ = [("Florian Franzen", "FlorianFranzen@gmail.com")] + def getAccountRequest(self, user=None): + req = super(PremiumizeMe, self).getAccountRequest(user) + req.http.c.setopt(pycurl.CURLOPT_SSL_CIPHER_LIST, "TLSv1") + return req + + def loadAccountInfo(self, user, req): # Get user data from premiumize.me status = self.getAccountStatus(user, req) -- cgit v1.2.3 From 3abd6df2b3df9cecdfd9aca298476e258b98a183 Mon Sep 17 00:00:00 2001 From: Walter Purcaro Date: Tue, 2 Jun 2015 12:37:59 +0200 Subject: [NitroflareCom] Premium support --- module/plugins/accounts/CatShareNet.py | 2 +- module/plugins/accounts/NitroflareCom.py | 63 ++++++++++++++++++++++++++++++++ 2 files changed, 64 insertions(+), 1 deletion(-) create mode 100644 module/plugins/accounts/NitroflareCom.py (limited to 'module/plugins/accounts') diff --git a/module/plugins/accounts/CatShareNet.py b/module/plugins/accounts/CatShareNet.py index bb42f443f..3ddadca8e 100644 --- a/module/plugins/accounts/CatShareNet.py +++ b/module/plugins/accounts/CatShareNet.py @@ -11,7 +11,7 @@ class CatShareNet(Account): __type__ = "account" __version__ = "0.05" - __description__ = """CatShareNet account plugin""" + __description__ = """Catshare.net account plugin""" __license__ = "GPLv3" __authors__ = [("prOq", None)] diff --git a/module/plugins/accounts/NitroflareCom.py b/module/plugins/accounts/NitroflareCom.py new file mode 100644 index 000000000..1ff8d1876 --- /dev/null +++ b/module/plugins/accounts/NitroflareCom.py @@ -0,0 +1,63 @@ +# -*- coding: utf-8 -*- + +import re +import time + +from module.plugins.Account import Account + + +class NitroflareCom(Account): + __name__ = "NitroflareCom" + __type__ = "account" + __version__ = "0.01" + + __description__ = """Nitroflare.com account plugin""" + __license__ = "GPLv3" + __authors__ = [("Walter Purcaro", "vuolter@gmail.com" )] + + + VALID_UNTIL_PATTERN = r'>Time Left(.+?)' + LOGIN_FAIL_PATTERN = r'
    \s*
  • ' + + + def loadAccountInfo(self, user, req): + validuntil = -1 + trafficleft = None #@TODO: Implement traffic left check + premium = False + + html = req.load("https://nitroflare.com/member", + get={'s': "premium"}, + decode=True) + + m = re.search(self.VALID_UNTIL_PATTERN, html) + if m: + expiredate = m.group(1).strip() + + try: + validuntil = sum(int(v) * {'day': 24 * 3600, 'hour': 3600, 'minute': 60}[u.lower()] for v, u in + re.findall(r'(\d+)\s*(day|hour|minute)', expiredate, re.I)) + except Exception, e: + self.logError(e) + + else: + if validuntil: + validuntil += time.time() + premium = True + else: + validuntil = -1 + + return {'validuntil' : validuntil, + 'trafficleft' : trafficleft, + 'premium' : premium} + + + def login(self, user, data, req): + html = req.load("https://nitroflare.com/login", decode=True) + html = req.load("https://nitroflare.com/login", + post={'email' : user, + 'password': data['password'], + 'token' : re.search(r'name="token" value="(.+?)"', html).group(1)}, + decode=True) + + if re.search(self.LOGIN_FAIL_PATTERN, html): + self.wrongPassword() -- cgit v1.2.3 From cff2a9b85332bd18ec1748ba18d0e607899d5079 Mon Sep 17 00:00:00 2001 From: Walter Purcaro Date: Tue, 2 Jun 2015 18:46:44 +0200 Subject: Fix https://github.com/pyload/pyload/issues/1449 --- module/plugins/accounts/PremiumizeMe.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'module/plugins/accounts') diff --git a/module/plugins/accounts/PremiumizeMe.py b/module/plugins/accounts/PremiumizeMe.py index 01ac36ab6..abd9fe14c 100644 --- a/module/plugins/accounts/PremiumizeMe.py +++ b/module/plugins/accounts/PremiumizeMe.py @@ -9,7 +9,7 @@ from module.plugins.Account import Account class PremiumizeMe(Account): __name__ = "PremiumizeMe" __type__ = "account" - __version__ = "0.14" + __version__ = "0.15" __description__ = """Premiumize.me account plugin""" __license__ = "GPLv3" @@ -18,7 +18,8 @@ class PremiumizeMe(Account): def getAccountRequest(self, user=None): req = super(PremiumizeMe, self).getAccountRequest(user) - req.http.c.setopt(pycurl.CURLOPT_SSL_CIPHER_LIST, "TLSv1") + if req: + req.http.c.setopt(pycurl.CURLOPT_SSL_CIPHER_LIST, "TLSv1") return req -- cgit v1.2.3 From adc3ac5b3a92bef7b277ffab0ff57d20f38d4169 Mon Sep 17 00:00:00 2001 From: Walter Purcaro Date: Tue, 2 Jun 2015 19:42:16 +0200 Subject: [FilerNet] Account fixup --- module/plugins/accounts/FilerNet.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'module/plugins/accounts') diff --git a/module/plugins/accounts/FilerNet.py b/module/plugins/accounts/FilerNet.py index ac5fd11da..149ff7d89 100644 --- a/module/plugins/accounts/FilerNet.py +++ b/module/plugins/accounts/FilerNet.py @@ -9,14 +9,14 @@ from module.plugins.Account import Account class FilerNet(Account): __name__ = "FilerNet" __type__ = "account" - __version__ = "0.04" + __version__ = "0.05" __description__ = """Filer.net account plugin""" __license__ = "GPLv3" __authors__ = [("stickell", "l.stickell@yahoo.it")] - TOKEN_PATTERN = r'_csrf_token" value="(.+?)" />' + TOKEN_PATTERN = r'name="_csrf_token" value="(.+?)"' WALID_UNTIL_PATTERN = r'Der Premium-Zugang ist gültig bis (.+)\.\s*' TRAFFIC_PATTERN = r'Traffic\s*([^<]+)' FREE_PATTERN = r'Account Status\s*\s*Free' @@ -43,15 +43,15 @@ class FilerNet(Account): def login(self, user, data, req): - html = req.load("https://filer.net/login") + html = req.load("https://filer.net/login", decode=True) token = re.search(self.TOKEN_PATTERN, html).group(1) html = req.load("https://filer.net/login_check", - post={"_username": user, - "_password": data['password'], + post={"_username" : user, + "_password" : data['password'], "_remember_me": "on", - "_csrf_token": token, + "_csrf_token" : token, "_target_path": "https://filer.net/"}, decode=True) -- cgit v1.2.3 From bea1e834b879e208867be1144d18b3037d909b67 Mon Sep 17 00:00:00 2001 From: Walter Purcaro Date: Tue, 2 Jun 2015 19:42:46 +0200 Subject: [PremiumizeMe] Account fixup --- module/plugins/accounts/PremiumizeMe.py | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) (limited to 'module/plugins/accounts') diff --git a/module/plugins/accounts/PremiumizeMe.py b/module/plugins/accounts/PremiumizeMe.py index abd9fe14c..da31d93ee 100644 --- a/module/plugins/accounts/PremiumizeMe.py +++ b/module/plugins/accounts/PremiumizeMe.py @@ -1,7 +1,5 @@ # -*- coding: utf-8 -*- -import pycurl - from module.common.json_layer import json_loads from module.plugins.Account import Account @@ -9,20 +7,13 @@ from module.plugins.Account import Account class PremiumizeMe(Account): __name__ = "PremiumizeMe" __type__ = "account" - __version__ = "0.15" + __version__ = "0.16" __description__ = """Premiumize.me account plugin""" __license__ = "GPLv3" __authors__ = [("Florian Franzen", "FlorianFranzen@gmail.com")] - def getAccountRequest(self, user=None): - req = super(PremiumizeMe, self).getAccountRequest(user) - if req: - req.http.c.setopt(pycurl.CURLOPT_SSL_CIPHER_LIST, "TLSv1") - return req - - def loadAccountInfo(self, user, req): # Get user data from premiumize.me status = self.getAccountStatus(user, req) @@ -50,7 +41,7 @@ class PremiumizeMe(Account): def getAccountStatus(self, user, req): # Use premiumize.me API v1 (see https://secure.premiumize.me/?show=api) # to retrieve account info and return the parsed json answer - answer = req.load("https://api.premiumize.me/pm-api/v1.php", + answer = req.load("http://api.premiumize.me/pm-api/v1.php", get={'method' : "accountstatus", 'params[login]': user, 'params[pass]' : self.getAccountData(user)['password']}) -- cgit v1.2.3 From 9790f4cda7e77b07ad69074ed82788b75999a2d2 Mon Sep 17 00:00:00 2001 From: Walter Purcaro Date: Wed, 3 Jun 2015 22:02:51 +0200 Subject: [NitroflareCom] Tryout --- module/plugins/accounts/NitroflareCom.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'module/plugins/accounts') diff --git a/module/plugins/accounts/NitroflareCom.py b/module/plugins/accounts/NitroflareCom.py index 1ff8d1876..4f7ae90c5 100644 --- a/module/plugins/accounts/NitroflareCom.py +++ b/module/plugins/accounts/NitroflareCom.py @@ -9,14 +9,14 @@ from module.plugins.Account import Account class NitroflareCom(Account): __name__ = "NitroflareCom" __type__ = "account" - __version__ = "0.01" + __version__ = "0.02" __description__ = """Nitroflare.com account plugin""" __license__ = "GPLv3" __authors__ = [("Walter Purcaro", "vuolter@gmail.com" )] - VALID_UNTIL_PATTERN = r'>Time Left(.+?)' + VALID_UNTIL_PATTERN = r'>Time Left(.+?)\s*
  • ' -- cgit v1.2.3 From cbd11a6117ce206aa44910a20e522709fd89c99b Mon Sep 17 00:00:00 2001 From: Walter Purcaro Date: Thu, 4 Jun 2015 02:01:27 +0200 Subject: [NitroflareCom] Account fixup --- module/plugins/accounts/NitroflareCom.py | 38 ++++++++++++++++++++++++-------- 1 file changed, 29 insertions(+), 9 deletions(-) (limited to 'module/plugins/accounts') diff --git a/module/plugins/accounts/NitroflareCom.py b/module/plugins/accounts/NitroflareCom.py index 4f7ae90c5..d9b434504 100644 --- a/module/plugins/accounts/NitroflareCom.py +++ b/module/plugins/accounts/NitroflareCom.py @@ -9,20 +9,23 @@ from module.plugins.Account import Account class NitroflareCom(Account): __name__ = "NitroflareCom" __type__ = "account" - __version__ = "0.02" + __version__ = "0.03" __description__ = """Nitroflare.com account plugin""" __license__ = "GPLv3" __authors__ = [("Walter Purcaro", "vuolter@gmail.com" )] - VALID_UNTIL_PATTERN = r'>Time Left(.+?)\s*
  • ' + VALID_UNTIL_PATTERN = r'>Time Left(.+?)Daily Limit([\d.,]+)' + LOGIN_FAIL_PATTERN = r'
      \s*
    • ' + + TOKEN_PATTERN = r'name="token" value="(.+?)"' def loadAccountInfo(self, user, req): validuntil = -1 - trafficleft = None #@TODO: Implement traffic left check + trafficleft = None premium = False html = req.load("https://nitroflare.com/member", @@ -32,6 +35,7 @@ class NitroflareCom(Account): m = re.search(self.VALID_UNTIL_PATTERN, html) if m: expiredate = m.group(1).strip() + self.logDebug("Time Left: " + expiredate) try: validuntil = sum(int(v) * {'day': 24 * 3600, 'hour': 3600, 'minute': 60}[u.lower()] for v, u in @@ -40,23 +44,39 @@ class NitroflareCom(Account): self.logError(e) else: + self.logDebug("Valid until: %s" % validuntil) + if validuntil: validuntil += time.time() premium = True else: validuntil = -1 - return {'validuntil' : validuntil, - 'trafficleft' : trafficleft, - 'premium' : premium} + m = re.search(self.TRAFFIC_LEFT_PATTERN, html) + if m: + try: + trafficleft = self.parseTraffic(str(max(0, 50 - int(m.group(1)))) + " GB") + + except Exception, e: + self.logError(e) + else: + self.logDebug("TRAFFIC_LEFT_PATTERN not found") + + return {'validuntil' : validuntil, + 'trafficleft': trafficleft, + 'premium' : premium} def login(self, user, data, req): html = req.load("https://nitroflare.com/login", decode=True) + + token = re.search(self.TOKEN_PATTERN, html).group(1) + html = req.load("https://nitroflare.com/login", - post={'email' : user, + post={'login' : "", + 'email' : user, 'password': data['password'], - 'token' : re.search(r'name="token" value="(.+?)"', html).group(1)}, + 'token' : token}, decode=True) if re.search(self.LOGIN_FAIL_PATTERN, html): -- cgit v1.2.3 From 43427b11a5cc8c88d2a37ce4d417b0a726c8d794 Mon Sep 17 00:00:00 2001 From: Walter Purcaro Date: Fri, 5 Jun 2015 03:05:35 +0200 Subject: [NitroflareCom] Account fixup (2) --- module/plugins/accounts/NitroflareCom.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'module/plugins/accounts') diff --git a/module/plugins/accounts/NitroflareCom.py b/module/plugins/accounts/NitroflareCom.py index d9b434504..57f2b9ae8 100644 --- a/module/plugins/accounts/NitroflareCom.py +++ b/module/plugins/accounts/NitroflareCom.py @@ -9,7 +9,7 @@ from module.plugins.Account import Account class NitroflareCom(Account): __name__ = "NitroflareCom" __type__ = "account" - __version__ = "0.03" + __version__ = "0.04" __description__ = """Nitroflare.com account plugin""" __license__ = "GPLv3" @@ -55,7 +55,7 @@ class NitroflareCom(Account): m = re.search(self.TRAFFIC_LEFT_PATTERN, html) if m: try: - trafficleft = self.parseTraffic(str(max(0, 50 - int(m.group(1)))) + " GB") + trafficleft = self.parseTraffic(str(max(0, 50 - float(m.group(1)))) + " GB") except Exception, e: self.logError(e) -- cgit v1.2.3