summaryrefslogtreecommitdiffstats
path: root/pyload/plugins
diff options
context:
space:
mode:
authorGravatar Walter Purcaro <vuolter@gmail.com> 2014-09-14 13:35:34 +0200
committerGravatar Walter Purcaro <vuolter@gmail.com> 2014-09-14 13:35:34 +0200
commit1066d65b9ed19d8e1b061c13fc0156d823fea800 (patch)
tree4c1fcd3b0660d2ccb3ce4d2abc0077f1a7876725 /pyload/plugins
parentDocs cleanup + remove script directory (diff)
parent[FTP] Restore pattern. (diff)
downloadpyload-1066d65b9ed19d8e1b061c13fc0156d823fea800.tar.xz
Merge remote-tracking branch 'pyload/stable' into 0.4.10
Conflicts: module/plugins/accounts/MultiDebridCom.py module/plugins/accounts/MyfastfileCom.py module/plugins/hooks/MultiDebridCom.py module/plugins/hooks/MyfastfileCom.py module/plugins/hooks/Premium4Me.py module/plugins/hooks/PremiumTo.py module/plugins/hoster/MultiDebridCom.py module/plugins/hoster/MyfastfileCom.py module/plugins/hoster/Premium4Me.py module/plugins/hoster/PremiumTo.py pyload/plugins/accounts/MultiDebridCom.py pyload/plugins/accounts/Premium4Me.py pyload/plugins/hooks/MultiDebridCom.py pyload/plugins/hooks/Premium4Me.py pyload/plugins/hoster/MultiDebridCom.py pyload/plugins/hoster/Premium4Me.py
Diffstat (limited to 'pyload/plugins')
-rw-r--r--pyload/plugins/accounts/FourSharedCom.py26
-rw-r--r--pyload/plugins/accounts/MyfastfileCom.py (renamed from pyload/plugins/accounts/MultiDebridCom.py)12
-rw-r--r--pyload/plugins/accounts/Premium4Me.py29
-rw-r--r--pyload/plugins/accounts/PremiumTo.py30
-rw-r--r--pyload/plugins/hooks/MyfastfileCom.py (renamed from pyload/plugins/hooks/MultiDebridCom.py)12
-rw-r--r--pyload/plugins/hooks/PremiumTo.py (renamed from pyload/plugins/hooks/Premium4Me.py)11
-rw-r--r--pyload/plugins/hoster/Ftp.py4
-rw-r--r--pyload/plugins/hoster/MyfastfileCom.py (renamed from pyload/plugins/hoster/MultiDebridCom.py)16
-rw-r--r--pyload/plugins/hoster/PremiumTo.py (renamed from pyload/plugins/hoster/Premium4Me.py)17
9 files changed, 80 insertions, 77 deletions
diff --git a/pyload/plugins/accounts/FourSharedCom.py b/pyload/plugins/accounts/FourSharedCom.py
index 217bd2874..e4df62956 100644
--- a/pyload/plugins/accounts/FourSharedCom.py
+++ b/pyload/plugins/accounts/FourSharedCom.py
@@ -7,28 +7,24 @@ from pyload.utils import json_loads
class FourSharedCom(Account):
__name__ = "FourSharedCom"
__type__ = "account"
- __version__ = "0.01"
+ __version__ = "0.03"
__description__ = """FourShared.com account plugin"""
- __author_name__ = "zoidberg"
- __author_mail__ = "zoidberg@mujmail.cz"
-
+ __author_name__ = ("zoidberg", "stickell")
+ __author_mail__ = ("zoidberg@mujmail.cz", "l.stickell@yahoo.it")
def loadAccountInfo(self, user, req):
- #fixme
- return {"validuntil": -1, "trafficleft": -1, "premium": False}
+ # Free mode only for now
+ return {"premium": False}
def login(self, user, data, req):
- req.cj.setCookie("www.4shared.com", "4langcookie", "en")
- response = req.load('http://www.4shared.com/login',
+ req.cj.setCookie("4shared.com", "4langcookie", "en")
+ response = req.load('http://www.4shared.com/web/login',
post={"login": user,
"password": data['password'],
- "remember": "false",
- "doNotRedirect": "true"})
- self.logDebug(response)
- response = json_loads(response)
+ "remember": "on",
+ "_remember": "on",
+ "returnTo": "http://www.4shared.com/account/home.jsp"})
- if not "ok" in response or response['ok'] != True:
- if "rejectReason" in response and response['rejectReason'] != True:
- self.logError(response['rejectReason'])
+ if 'Please log in to access your 4shared account' in response:
self.wrongPassword()
diff --git a/pyload/plugins/accounts/MultiDebridCom.py b/pyload/plugins/accounts/MyfastfileCom.py
index cca6a9849..b5d35d326 100644
--- a/pyload/plugins/accounts/MultiDebridCom.py
+++ b/pyload/plugins/accounts/MyfastfileCom.py
@@ -6,12 +6,12 @@ from pyload.plugins.Account import Account
from pyload.utils import json_loads
-class MultiDebridCom(Account):
- __name__ = "MultiDebridCom"
+class MyfastfileCom(Account):
+ __name__ = "MyfastfileCom"
__type__ = "account"
- __version__ = "0.01"
+ __version__ = "0.02"
- __description__ = """Multi-debrid.com account plugin"""
+ __description__ = """Myfastfile.com account plugin"""
__author_name__ = "stickell"
__author_mail__ = "l.stickell@yahoo.it"
@@ -24,8 +24,8 @@ class MultiDebridCom(Account):
self.logError('Unable to get account information')
def login(self, user, data, req):
- # Password to use is the API-Password written in http://multi-debrid.com/myaccount
- html = req.load("http://multi-debrid.com/api.php",
+ # Password to use is the API-Password written in http://myfastfile.com/myaccount
+ html = req.load("http://myfastfile.com/api.php",
get={"user": user, "pass": data['password']})
self.logDebug('JSON data: ' + html)
self.json_data = json_loads(html)
diff --git a/pyload/plugins/accounts/Premium4Me.py b/pyload/plugins/accounts/Premium4Me.py
deleted file mode 100644
index 01b4b834e..000000000
--- a/pyload/plugins/accounts/Premium4Me.py
+++ /dev/null
@@ -1,29 +0,0 @@
-# -*- coding: utf-8 -*-
-
-from pyload.plugins.Account import Account
-
-
-class Premium4Me(Account):
- __name__ = "Premium4Me"
- __type__ = "account"
- __version__ = "0.03"
-
- __description__ = """Premium.to account plugin"""
- __author_name__ = ("RaNaN", "zoidberg", "stickell")
- __author_mail__ = ("RaNaN@pyload.org", "zoidberg@mujmail.cz", "l.stickell@yahoo.it")
-
-
- def loadAccountInfo(self, user, req):
- traffic = req.load("http://premium.to/api/traffic.php?authcode=%s" % self.authcode)
-
- account_info = {"trafficleft": int(traffic) / 1024,
- "validuntil": -1}
-
- return account_info
-
- def login(self, user, data, req):
- self.authcode = req.load("http://premium.to/api/getauthcode.php?username=%s&password=%s" % (
- user, data['password'])).strip()
-
- if "wrong username" in self.authcode:
- self.wrongPassword()
diff --git a/pyload/plugins/accounts/PremiumTo.py b/pyload/plugins/accounts/PremiumTo.py
new file mode 100644
index 000000000..3b757bdf2
--- /dev/null
+++ b/pyload/plugins/accounts/PremiumTo.py
@@ -0,0 +1,30 @@
+# -*- coding: utf-8 -*-
+
+from pyload.plugins.Account import Account
+
+
+class PremiumTo(Account):
+ __name__ = "PremiumTo"
+ __type__ = "account"
+ __version__ = "0.04"
+
+ __description__ = """Premium.to account plugin"""
+ __author_name__ = ("RaNaN", "zoidberg", "stickell")
+ __author_mail__ = ("RaNaN@pyload.org", "zoidberg@mujmail.cz", "l.stickell@yahoo.it")
+
+
+ def loadAccountInfo(self, user, req):
+ api_r = req.load("http://premium.to/api/straffic.php",
+ get={'username': self.username, 'password': self.password})
+ traffic = sum(map(int, api_r.split(';')))
+
+ return {"trafficleft": int(traffic) / 1024, "validuntil": -1}
+
+ def login(self, user, data, req):
+ self.username = user
+ self.password = data['password']
+ authcode = req.load("http://premium.to/api/getauthcode.php?username=%s&password=%s" % (
+ user, self.password)).strip()
+
+ if "wrong username" in authcode:
+ self.wrongPassword()
diff --git a/pyload/plugins/hooks/MultiDebridCom.py b/pyload/plugins/hooks/MyfastfileCom.py
index 6aa5ba3eb..311bc2212 100644
--- a/pyload/plugins/hooks/MultiDebridCom.py
+++ b/pyload/plugins/hooks/MyfastfileCom.py
@@ -1,14 +1,14 @@
# -*- coding: utf-8 -*-
-from pyload.utils import json_loads
from pyload.network.RequestFactory import getURL
from pyload.plugins.internal.MultiHoster import MultiHoster
+from pyload.utils import json_loads
-class MultiDebridCom(MultiHoster):
- __name__ = "MultiDebridCom"
+class MyfastfileCom(MultiHoster):
+ __name__ = "MyfastfileCom"
__type__ = "hook"
- __version__ = "0.01"
+ __version__ = "0.02"
__config__ = [("activated", "bool", "Activated", False),
("hosterListMode", "all;listed;unlisted", "Use for hosters (if supported)", "all"),
@@ -16,13 +16,13 @@ class MultiDebridCom(MultiHoster):
("unloadFailing", "bool", "Revert to standard download if download fails", False),
("interval", "int", "Reload interval in hours (0 to disable)", 24)]
- __description__ = """Multi-debrid.com hook plugin"""
+ __description__ = """Myfastfile.com hook plugin"""
__author_name__ = "stickell"
__author_mail__ = "l.stickell@yahoo.it"
def getHoster(self):
- json_data = getURL('http://multi-debrid.com/api.php?hosts', decode=True)
+ json_data = getURL('http://myfastfile.com/api.php?hosts', decode=True)
self.logDebug('JSON data: ' + json_data)
json_data = json_loads(json_data)
diff --git a/pyload/plugins/hooks/Premium4Me.py b/pyload/plugins/hooks/PremiumTo.py
index 6841dfa90..b95b15b53 100644
--- a/pyload/plugins/hooks/Premium4Me.py
+++ b/pyload/plugins/hooks/PremiumTo.py
@@ -4,10 +4,10 @@ from pyload.network.RequestFactory import getURL
from pyload.plugins.internal.MultiHoster import MultiHoster
-class Premium4Me(MultiHoster):
- __name__ = "Premium4Me"
+class PremiumTo(MultiHoster):
+ __name__ = "PremiumTo"
__type__ = "hook"
- __version__ = "0.03"
+ __version__ = "0.04"
__config__ = [("activated", "bool", "Activated", False),
("hosterListMode", "all;listed;unlisted", "Use for downloads from supported hosters:", "all"),
@@ -19,11 +19,12 @@ class Premium4Me(MultiHoster):
def getHoster(self):
- page = getURL("http://premium.to/api/hosters.php?authcode=%s" % self.account.authcode)
+ page = getURL("http://premium.to/api/hosters.php",
+ get={'username': self.account.username, 'password': self.account.password})
return [x.strip() for x in page.replace("\"", "").split(";")]
def coreReady(self):
- self.account = self.core.accountManager.getAccountPlugin("Premium4Me")
+ self.account = self.core.accountManager.getAccountPlugin("PremiumTo")
user = self.account.selectAccount()[0]
diff --git a/pyload/plugins/hoster/Ftp.py b/pyload/plugins/hoster/Ftp.py
index f9b3865a7..641d93276 100644
--- a/pyload/plugins/hoster/Ftp.py
+++ b/pyload/plugins/hoster/Ftp.py
@@ -12,7 +12,9 @@ from pyload.plugins.Hoster import Hoster
class Ftp(Hoster):
__name__ = "Ftp"
__type__ = "hoster"
- __version__ = "0.41"
+ __version__ = "0.42"
+
+ __pattern__ = r'(ftps?|sftp)://(.*?:.*?@)?.*?/.*' #: ftp://user:password@ftp.server.org/path/to/file
__description__ = """Download from ftp directory"""
__author_name__ = ("jeix", "mkaay", "zoidberg")
diff --git a/pyload/plugins/hoster/MultiDebridCom.py b/pyload/plugins/hoster/MyfastfileCom.py
index bd7d9460c..604e2ab06 100644
--- a/pyload/plugins/hoster/MultiDebridCom.py
+++ b/pyload/plugins/hoster/MyfastfileCom.py
@@ -2,18 +2,18 @@
import re
-from pyload.utils import json_loads
from pyload.plugins.Hoster import Hoster
+from pyload.utils import json_loads
-class MultiDebridCom(Hoster):
- __name__ = "MultiDebridCom"
+class MyfastfileCom(Hoster):
+ __name__ = "MyfastfileCom"
__type__ = "hoster"
- __version__ = "0.03"
+ __version__ = "0.04"
__pattern__ = r'http://(?:www\.)?\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}/dl/'
- __description__ = """Multi-debrid.com hoster plugin"""
+ __description__ = """Myfastfile.com hoster plugin"""
__author_name__ = "stickell"
__author_mail__ = "l.stickell@yahoo.it"
@@ -26,11 +26,11 @@ class MultiDebridCom(Hoster):
if re.match(self.__pattern__, pyfile.url):
new_url = pyfile.url
elif not self.account:
- self.logError(_("Please enter your %s account or deactivate this plugin") % "Multi-debrid.com")
- self.fail("No Multi-debrid.com account provided")
+ self.logError(_("Please enter your %s account or deactivate this plugin") % "Myfastfile.com")
+ self.fail("No Myfastfile.com account provided")
else:
self.logDebug("Original URL: %s" % pyfile.url)
- page = self.req.load('http://multi-debrid.com/api.php',
+ page = self.req.load('http://myfastfile.com/api.php',
get={'user': self.user, 'pass': self.account.getAccountData(self.user)['password'],
'link': pyfile.url})
self.logDebug("JSON data: " + page)
diff --git a/pyload/plugins/hoster/Premium4Me.py b/pyload/plugins/hoster/PremiumTo.py
index 439242aa7..33df2e7bc 100644
--- a/pyload/plugins/hoster/Premium4Me.py
+++ b/pyload/plugins/hoster/PremiumTo.py
@@ -8,12 +8,12 @@ from pyload.plugins.Hoster import Hoster
from pyload.utils import fs_encode
-class Premium4Me(Hoster):
- __name__ = "Premium4Me"
+class PremiumTo(Hoster):
+ __name__ = "PremiumTo"
__type__ = "hoster"
- __version__ = "0.08"
+ __version__ = "0.09"
- __pattern__ = r'http://(?:www\.)?premium.to/.*'
+ __pattern__ = r'https?://(?:www\.)?premium.to/.*'
__description__ = """Premium.to hoster plugin"""
__author_name__ = ("RaNaN", "zoidberg", "stickell")
@@ -29,7 +29,7 @@ class Premium4Me(Hoster):
self.logError(_("Please enter your %s account or deactivate this plugin") % "premium.to")
self.fail("No premium.to account provided")
- self.logDebug("premium.to: Old URL: %s" % pyfile.url)
+ self.logDebug("Old URL: %s" % pyfile.url)
tra = self.getTraffic()
@@ -37,7 +37,8 @@ class Premium4Me(Hoster):
self.req.setOption("timeout", 120)
self.download(
- "http://premium.to/api/getfile.php?authcode=%s&link=%s" % (self.account.authcode, quote(pyfile.url, "")),
+ "http://premium.to/api/getfile.php",
+ get={"username": self.account.username, "password": self.account.password, "link": quote(pyfile.url, "")},
disposition=True)
check = self.checkDownload({"nopremium": "No premium account available"})
@@ -66,7 +67,9 @@ class Premium4Me(Hoster):
def getTraffic(self):
try:
- traffic = int(self.load("http://premium.to/api/traffic.php?authcode=%s" % self.account.authcode))
+ api_r = self.load("http://premium.to/api/straffic.php",
+ get={'username': self.account.username, 'password': self.account.password})
+ traffic = sum(map(int, api_r.split(';')))
except:
traffic = 0
return traffic