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'