summaryrefslogtreecommitdiffstats
path: root/module/plugins
diff options
context:
space:
mode:
authorGravatar Walter Purcaro <vuolter@users.noreply.github.com> 2015-06-02 03:26:41 +0200
committerGravatar Walter Purcaro <vuolter@users.noreply.github.com> 2015-06-02 03:26:41 +0200
commitf8ee62fa313beddc7af46dc1c361adb8577d0fa4 (patch)
tree3f37fdd4142da53d8649ba593528e82462df3b3c /module/plugins
parent[SimpleCrypter] Update (diff)
downloadpyload-f8ee62fa313beddc7af46dc1c361adb8577d0fa4.tar.xz
Fix https://github.com/pyload/pyload/issues/1446
Diffstat (limited to 'module/plugins')
-rw-r--r--module/plugins/accounts/RapidgatorNet.py2
-rw-r--r--module/plugins/accounts/WebshareCz.py6
-rw-r--r--module/plugins/hoster/ShareonlineBiz.py37
-rw-r--r--module/plugins/hoster/WebshareCz.py37
-rw-r--r--module/plugins/internal/DeadCrypter.py8
-rw-r--r--module/plugins/internal/DeadHoster.py8
-rw-r--r--module/plugins/internal/SimpleHoster.py1
7 files changed, 49 insertions, 50 deletions
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 "<status>OK</status>" not in login:
self.wrongPassword()
- self.infos['wst'] = re.search('<token>(.+)</token>', login).group(1)
+ data['wst'] = re.search('<token>(.+)</token>', login).group(1)
diff --git a/module/plugins/hoster/ShareonlineBiz.py b/module/plugins/hoster/ShareonlineBiz.py
index 33e37cbc7..64a490993 100644
--- a/module/plugins/hoster/ShareonlineBiz.py
+++ b/module/plugins/hoster/ShareonlineBiz.py
@@ -39,25 +39,24 @@ class ShareonlineBiz(SimpleHoster):
def apiInfo(cls, url):
info = super(ShareonlineBiz, cls).apiInfo(url)
- if url:
- field = getURL("http://api.share-online.biz/linkcheck.php",
- get={'md5' : "1",
- 'links': re.match(cls.__pattern__, url).group("ID")},
- decode=True).split(";")
-
- try:
- if field[1] == "OK":
- info['fileid'] = field[0]
- info['status'] = 2
- info['name'] = field[2]
- info['size'] = field[3] #: in bytes
- info['md5'] = field[4].strip().lower().replace("\n\n", "") #: md5
-
- elif field[1] in ("DELETED", "NOT FOUND"):
- info['status'] = 1
-
- except IndexError:
- pass
+ field = getURL("http://api.share-online.biz/linkcheck.php",
+ get={'md5' : "1",
+ 'links': re.match(cls.__pattern__, url).group("ID")},
+ decode=True).split(";")
+
+ try:
+ if field[1] == "OK":
+ info['fileid'] = field[0]
+ info['status'] = 2
+ info['name'] = field[2]
+ info['size'] = field[3] #: in bytes
+ info['md5'] = field[4].strip().lower().replace("\n\n", "") #: md5
+
+ elif field[1] in ("DELETED", "NOT FOUND"):
+ info['status'] = 1
+
+ except IndexError:
+ pass
return info
diff --git a/module/plugins/hoster/WebshareCz.py b/module/plugins/hoster/WebshareCz.py
index ae670c8d4..b56d06a5b 100644
--- a/module/plugins/hoster/WebshareCz.py
+++ b/module/plugins/hoster/WebshareCz.py
@@ -9,42 +9,41 @@ from module.plugins.internal.SimpleHoster import SimpleHoster, create_getInfo
class WebshareCz(SimpleHoster):
__name__ = "WebshareCz"
__type__ = "hoster"
- __version__ = "0.16"
+ __version__ = "0.17"
- __pattern__ = r'https?://(?:www\.)?webshare\.cz/(?:#/)?file/(?P<ID>\w+)'
+ __pattern__ = r'https?://(?:www\.)?(en\.)?webshare\.cz/(?:#/)?file/(?P<ID>\w+)'
__config__ = [("use_premium", "bool", "Use premium account if available", True)]
__description__ = """WebShare.cz hoster plugin"""
__license__ = "GPLv3"
- __authors__ = [("stickell", "l.stickell@yahoo.it"),
- ("rush", "radek.senfeld@gmail.com")]
+ __authors__ = [("stickell", "l.stickell@yahoo.it "),
+ ("rush" , "radek.senfeld@gmail.com")]
@classmethod
- def getInfo(cls, url="", html=""):
- info = super(WebshareCz, cls).getInfo(url, html)
+ def apiInfo(cls, url):
+ info = super(WebshareCz, cls).apiInfo(url)
- if url:
- info['pattern'] = re.match(cls.__pattern__, url).groupdict()
+ info['pattern'] = re.match(cls.__pattern__, url).groupdict()
- api_data = getURL("https://webshare.cz/api/file_info/",
- post={'ident': info['pattern']['ID']},
- decode=True)
+ api_data = getURL("https://webshare.cz/api/file_info/",
+ post={'ident': info['pattern']['ID'], 'wst': ""},
+ decode=True)
- if 'File not found' in api_data:
- info['status'] = 1
- else:
- info["status"] = 2
- info['name'] = re.search('<name>(.+)</name>', api_data).group(1) or info['name']
- info['size'] = re.search('<size>(.+)</size>', api_data).group(1) or info['size']
+ if not re.search(r'<status>OK'):
+ info['status'] = 1
+ else:
+ info['status'] = 2
+ info['name'] = re.search(r'<name>(.+?)<', api_data).group(1)
+ info['size'] = re.search(r'<size>(.+?)<', api_data).group(1)
return info
def handleFree(self, pyfile):
- wst = self.account.infos['wst'] if self.account and 'wst' in self.account.infos else ""
+ wst = self.account.getAccountData(self.user).get('wst', None) if self.account else None
- api_data = getURL('https://webshare.cz/api/file_link/',
+ api_data = getURL("https://webshare.cz/api/file_link/",
post={'ident': self.info['pattern']['ID'], 'wst': wst},
decode=True)
diff --git a/module/plugins/internal/DeadCrypter.py b/module/plugins/internal/DeadCrypter.py
index c93447164..a12399501 100644
--- a/module/plugins/internal/DeadCrypter.py
+++ b/module/plugins/internal/DeadCrypter.py
@@ -1,10 +1,10 @@
# -*- coding: utf-8 -*-
from module.plugins.internal.SimpleCrypter import create_getInfo
-from module.plugins.Crypter import Crypter as _Crypter
+from module.plugins.Crypter import Crypter
-class DeadCrypter(_Crypter):
+class DeadCrypter(Crypter):
__name__ = "DeadCrypter"
__type__ = "crypter"
__version__ = "0.05"
@@ -17,8 +17,8 @@ class DeadCrypter(_Crypter):
@classmethod
- def apiInfo(cls, url):
- api = super(DeadCrypter, cls).apiInfo(url)
+ def apiInfo(cls, *args, **kwargs):
+ api = super(DeadCrypter, cls).apiInfo(*args, **kwargs)
api['status'] = 1
return api
diff --git a/module/plugins/internal/DeadHoster.py b/module/plugins/internal/DeadHoster.py
index f159ae5fa..22825e87b 100644
--- a/module/plugins/internal/DeadHoster.py
+++ b/module/plugins/internal/DeadHoster.py
@@ -1,10 +1,10 @@
# -*- coding: utf-8 -*-
from module.plugins.internal.SimpleHoster import create_getInfo
-from module.plugins.Hoster import Hoster as _Hoster
+from module.plugins.Hoster import Hoster
-class DeadHoster(_Hoster):
+class DeadHoster(Hoster):
__name__ = "DeadHoster"
__type__ = "hoster"
__version__ = "0.15"
@@ -17,8 +17,8 @@ class DeadHoster(_Hoster):
@classmethod
- def apiInfo(cls, url):
- api = super(DeadHoster, cls).apiInfo(url)
+ def apiInfo(cls, *args, **kwargs):
+ api = super(DeadHoster, cls).apiInfo(*args, **kwargs)
api['status'] = 1
return api
diff --git a/module/plugins/internal/SimpleHoster.py b/module/plugins/internal/SimpleHoster.py
index 52ec25a5a..16e9c7f2e 100644
--- a/module/plugins/internal/SimpleHoster.py
+++ b/module/plugins/internal/SimpleHoster.py
@@ -317,6 +317,7 @@ class SimpleHoster(Hoster):
MULTI_HOSTER = False #: Set to True to leech other hoster link (as defined in handleMulti method)
TEXT_ENCODING = False #: Set to True or encoding name if encoding value in http header is not correct
+
directLink = getFileURL #@TODO: Remove in 0.4.10