summaryrefslogtreecommitdiffstats
path: root/module
diff options
context:
space:
mode:
authorGravatar Walter Purcaro <vuolter@gmail.com> 2014-07-15 16:27:44 +0200
committerGravatar Walter Purcaro <vuolter@gmail.com> 2014-07-15 16:27:44 +0200
commit8e47b0de30a25d0fd5dfb518bfe4e1e7beff93fd (patch)
tree518c204aa8edbc8b0d33fe1aaa614e539438fae9 /module
parentPrefer single quote for dict key name (diff)
downloadpyload-8e47b0de30a25d0fd5dfb518bfe4e1e7beff93fd.tar.xz
Key attributes cleanup for account, container and crypter plugins
Diffstat (limited to 'module')
-rw-r--r--module/plugins/accounts/AlldebridCom.py2
-rw-r--r--module/plugins/accounts/BayfilesCom.py2
-rw-r--r--module/plugins/accounts/BitshareCom.py2
-rw-r--r--module/plugins/accounts/CramitIn.py1
-rw-r--r--module/plugins/accounts/CyberlockerCh.py2
-rw-r--r--module/plugins/accounts/CzshareCom.py2
-rw-r--r--module/plugins/accounts/DdlstorageCom.py2
-rw-r--r--module/plugins/accounts/DebridItaliaCom.py2
-rw-r--r--module/plugins/accounts/DepositfilesCom.py2
-rw-r--r--module/plugins/accounts/EasybytezCom.py2
-rw-r--r--module/plugins/accounts/EgoFilesCom.py2
-rw-r--r--module/plugins/accounts/EuroshareEu.py2
-rw-r--r--module/plugins/accounts/FastixRu.py2
-rw-r--r--module/plugins/accounts/FastshareCz.py2
-rw-r--r--module/plugins/accounts/File4safeCom.py1
-rw-r--r--module/plugins/accounts/FilecloudIo.py2
-rw-r--r--module/plugins/accounts/FilefactoryCom.py2
-rw-r--r--module/plugins/accounts/FilejungleCom.py2
-rw-r--r--module/plugins/accounts/FilerNet.py2
-rw-r--r--module/plugins/accounts/FilerioCom.py1
-rw-r--r--module/plugins/accounts/FilesMailRu.py2
-rw-r--r--module/plugins/accounts/FileserveCom.py2
-rw-r--r--module/plugins/accounts/FourSharedCom.py2
-rw-r--r--module/plugins/accounts/FreakshareCom.py2
-rw-r--r--module/plugins/accounts/FreeWayMe.py2
-rw-r--r--module/plugins/accounts/FshareVn.py2
-rw-r--r--module/plugins/accounts/Ftp.py2
-rw-r--r--module/plugins/accounts/HellshareCz.py2
-rw-r--r--module/plugins/accounts/HotfileCom.py2
-rw-r--r--module/plugins/accounts/Http.py2
-rw-r--r--module/plugins/accounts/LetitbitNet.py2
-rw-r--r--module/plugins/accounts/LinksnappyCom.py2
-rw-r--r--module/plugins/accounts/MegaDebridEu.py2
-rw-r--r--module/plugins/accounts/MegasharesCom.py2
-rw-r--r--module/plugins/accounts/MovReelCom.py1
-rw-r--r--module/plugins/accounts/MultiDebridCom.py2
-rw-r--r--module/plugins/accounts/MultishareCz.py2
-rwxr-xr-xmodule/plugins/accounts/NetloadIn.py2
-rw-r--r--module/plugins/accounts/OboomCom.py2
-rw-r--r--module/plugins/accounts/OneFichierCom.py1
-rw-r--r--module/plugins/accounts/OverLoadMe.py2
-rw-r--r--module/plugins/accounts/Premium4Me.py2
-rw-r--r--module/plugins/accounts/PremiumizeMe.py2
-rw-r--r--module/plugins/accounts/QuickshareCz.py2
-rw-r--r--module/plugins/accounts/RPNetBiz.py2
-rw-r--r--module/plugins/accounts/RapidgatorNet.py2
-rw-r--r--module/plugins/accounts/RapidshareCom.py2
-rw-r--r--module/plugins/accounts/RarefileNet.py1
-rw-r--r--module/plugins/accounts/RealdebridCom.py2
-rw-r--r--module/plugins/accounts/RehostTo.py2
-rw-r--r--module/plugins/accounts/RyushareCom.py2
-rw-r--r--module/plugins/accounts/ShareRapidCom.py2
-rw-r--r--module/plugins/accounts/ShareonlineBiz.py2
-rw-r--r--module/plugins/accounts/SimplyPremiumCom.py2
-rw-r--r--module/plugins/accounts/SimplydebridCom.py2
-rw-r--r--module/plugins/accounts/StahnuTo.py1
-rw-r--r--module/plugins/accounts/TurbobitNet.py1
-rw-r--r--module/plugins/accounts/UlozTo.py2
-rw-r--r--module/plugins/accounts/UnrestrictLi.py2
-rw-r--r--module/plugins/accounts/UploadedTo.py2
-rw-r--r--module/plugins/accounts/UploadheroCom.py2
-rw-r--r--module/plugins/accounts/UploadingCom.py2
-rw-r--r--module/plugins/accounts/UptoboxCom.py1
-rw-r--r--module/plugins/accounts/YibaishiwuCom.py2
-rw-r--r--module/plugins/accounts/ZeveraCom.py2
-rw-r--r--module/plugins/captcha/captcha.py1
-rw-r--r--module/plugins/container/CCF.py11
-rw-r--r--module/plugins/container/LinkList.py8
-rw-r--r--module/plugins/container/RSDF.py3
-rw-r--r--module/plugins/crypter/BitshareComFolder.py4
-rw-r--r--module/plugins/crypter/C1neonCom.py4
-rw-r--r--module/plugins/crypter/ChipDe.py5
-rw-r--r--module/plugins/crypter/CrockoComFolder.py4
-rw-r--r--module/plugins/crypter/CryptItCom.py4
-rw-r--r--module/plugins/crypter/CzshareComFolder.py5
-rw-r--r--module/plugins/crypter/DDLMusicOrg.py6
-rw-r--r--module/plugins/crypter/DailymotionBatch.py5
-rw-r--r--module/plugins/crypter/DataHuFolder.py5
-rw-r--r--module/plugins/crypter/DdlstorageComFolder.py4
-rw-r--r--module/plugins/crypter/DepositfilesComFolder.py4
-rw-r--r--module/plugins/crypter/Dereferer.py5
-rw-r--r--module/plugins/crypter/DlProtectCom.py6
-rw-r--r--module/plugins/crypter/DontKnowMe.py5
-rw-r--r--module/plugins/crypter/DuckCryptInfo.py5
-rw-r--r--module/plugins/crypter/DuploadOrgFolder.py4
-rw-r--r--module/plugins/crypter/EasybytezComFolder.py4
-rw-r--r--module/plugins/crypter/EmbeduploadCom.py7
-rw-r--r--module/plugins/crypter/FilebeerInfoFolder.py4
-rw-r--r--module/plugins/crypter/FilecloudIoFolder.py4
-rw-r--r--module/plugins/crypter/FilefactoryComFolder.py5
-rw-r--r--module/plugins/crypter/FilerNetFolder.py7
-rw-r--r--module/plugins/crypter/FileserveComFolder.py5
-rw-r--r--module/plugins/crypter/FilestubeCom.py4
-rw-r--r--module/plugins/crypter/FiletramCom.py4
-rw-r--r--module/plugins/crypter/FiredriveComFolder.py5
-rw-r--r--module/plugins/crypter/FourChanOrg.py11
-rw-r--r--module/plugins/crypter/FreakhareComFolder.py5
-rw-r--r--module/plugins/crypter/FreetexthostCom.py5
-rw-r--r--module/plugins/crypter/FshareVnFolder.py4
-rw-r--r--module/plugins/crypter/GooGl.py5
-rw-r--r--module/plugins/crypter/HoerbuchIn.py5
-rw-r--r--module/plugins/crypter/HotfileFolderCom.py5
-rw-r--r--module/plugins/crypter/ILoadTo.py4
-rw-r--r--module/plugins/crypter/ImgurComAlbum.py7
-rw-r--r--module/plugins/crypter/LetitbitNetFolder.py5
-rw-r--r--module/plugins/crypter/LinkSaveIn.py5
-rw-r--r--module/plugins/crypter/LinkdecrypterCom.py6
-rw-r--r--module/plugins/crypter/LixIn.py5
-rw-r--r--module/plugins/crypter/LofCc.py4
-rw-r--r--module/plugins/crypter/MBLinkInfo.py4
-rw-r--r--module/plugins/crypter/MediafireComFolder.py4
-rw-r--r--module/plugins/crypter/Movie2kTo.py4
-rw-r--r--module/plugins/crypter/MultiUpOrg.py5
-rw-r--r--module/plugins/crypter/MultiloadCz.py7
-rw-r--r--module/plugins/crypter/MultiuploadCom.py7
-rw-r--r--module/plugins/crypter/NCryptIn.py15
-rw-r--r--module/plugins/crypter/NetfolderIn.py5
-rw-r--r--module/plugins/crypter/NosvideoCom.py4
-rw-r--r--module/plugins/crypter/OneKhDe.py5
-rwxr-xr-xmodule/plugins/crypter/OronComFolder.py4
-rw-r--r--module/plugins/crypter/PastebinCom.py4
-rw-r--r--module/plugins/crypter/QuickshareCzFolder.py5
-rw-r--r--module/plugins/crypter/RSLayerCom.py4
-rw-r--r--module/plugins/crypter/RelinkUs.py4
-rw-r--r--module/plugins/crypter/SafelinkingNet.py9
-rw-r--r--module/plugins/crypter/SecuredIn.py4
-rw-r--r--module/plugins/crypter/SerienjunkiesOrg.py11
-rw-r--r--module/plugins/crypter/ShareLinksBiz.py5
-rw-r--r--module/plugins/crypter/ShareRapidComFolder.py4
-rw-r--r--module/plugins/crypter/SpeedLoadOrgFolder.py4
-rw-r--r--module/plugins/crypter/StealthTo.py5
-rw-r--r--module/plugins/crypter/TnyCz.py5
-rw-r--r--module/plugins/crypter/TrailerzoneInfo.py4
-rw-r--r--module/plugins/crypter/TurbobitNetFolder.py5
-rw-r--r--module/plugins/crypter/TusfilesNetFolder.py5
-rw-r--r--module/plugins/crypter/UlozToFolder.py5
-rw-r--r--module/plugins/crypter/UploadedToFolder.py5
-rw-r--r--module/plugins/crypter/WiiReloadedOrg.py4
-rw-r--r--module/plugins/crypter/XupPl.py5
-rw-r--r--module/plugins/crypter/YoutubeBatch.py10
-rw-r--r--module/plugins/internal/CaptchaService.py1
141 files changed, 420 insertions, 96 deletions
diff --git a/module/plugins/accounts/AlldebridCom.py b/module/plugins/accounts/AlldebridCom.py
index ee0a2ff28..122d23447 100644
--- a/module/plugins/accounts/AlldebridCom.py
+++ b/module/plugins/accounts/AlldebridCom.py
@@ -13,10 +13,12 @@ class AlldebridCom(Account):
__name__ = "AlldebridCom"
__version__ = "0.22"
__type__ = "account"
+
__description__ = """AllDebrid.com account plugin"""
__author_name__ = "Andy Voigt"
__author_mail__ = "spamsales@online.de"
+
def loadAccountInfo(self, user, req):
data = self.getAccountData(user)
page = req.load("http://www.alldebrid.com/account/")
diff --git a/module/plugins/accounts/BayfilesCom.py b/module/plugins/accounts/BayfilesCom.py
index 8f11af2ef..9d497ccb2 100644
--- a/module/plugins/accounts/BayfilesCom.py
+++ b/module/plugins/accounts/BayfilesCom.py
@@ -25,10 +25,12 @@ class BayfilesCom(Account):
__name__ = "BayfilesCom"
__version__ = "0.03"
__type__ = "account"
+
__description__ = """Bayfiles.com account plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
+
def loadAccountInfo(self, user, req):
for _ in xrange(2):
response = json_loads(req.load("http://api.bayfiles.com/v1/account/info"))
diff --git a/module/plugins/accounts/BitshareCom.py b/module/plugins/accounts/BitshareCom.py
index 09ff76efb..3802b2c46 100644
--- a/module/plugins/accounts/BitshareCom.py
+++ b/module/plugins/accounts/BitshareCom.py
@@ -22,10 +22,12 @@ class BitshareCom(Account):
__name__ = "BitshareCom"
__version__ = "0.12"
__type__ = "account"
+
__description__ = """Bitshare account plugin"""
__author_name__ = "Paul King"
__author_mail__ = None
+
def loadAccountInfo(self, user, req):
page = req.load("http://bitshare.com/mysettings.html")
diff --git a/module/plugins/accounts/CramitIn.py b/module/plugins/accounts/CramitIn.py
index 56cb5390b..9d352c967 100644
--- a/module/plugins/accounts/CramitIn.py
+++ b/module/plugins/accounts/CramitIn.py
@@ -7,6 +7,7 @@ class CramitIn(XFSPAccount):
__name__ = "CramitIn"
__version__ = "0.01"
__type__ = "account"
+
__description__ = """Cramit.in account plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
diff --git a/module/plugins/accounts/CyberlockerCh.py b/module/plugins/accounts/CyberlockerCh.py
index 4f3189b0c..297808a6e 100644
--- a/module/plugins/accounts/CyberlockerCh.py
+++ b/module/plugins/accounts/CyberlockerCh.py
@@ -8,12 +8,14 @@ class CyberlockerCh(XFSPAccount):
__name__ = "CyberlockerCh"
__version__ = "0.01"
__type__ = "account"
+
__description__ = """Cyberlocker.ch account plugin"""
__author_name__ = "stickell"
__author_mail__ = "l.stickell@yahoo.it"
MAIN_PAGE = "http://cyberlocker.ch/"
+
def login(self, user, data, req):
html = req.load(self.MAIN_PAGE + 'login.html', decode=True)
diff --git a/module/plugins/accounts/CzshareCom.py b/module/plugins/accounts/CzshareCom.py
index 3545baa7e..92d0e61e8 100644
--- a/module/plugins/accounts/CzshareCom.py
+++ b/module/plugins/accounts/CzshareCom.py
@@ -25,12 +25,14 @@ class CzshareCom(Account):
__name__ = "CzshareCom"
__version__ = "0.14"
__type__ = "account"
+
__description__ = """Czshare.com account plugin, now Sdilej.cz"""
__author_name__ = ("zoidberg", "stickell")
__author_mail__ = ("zoidberg@mujmail.cz", "l.stickell@yahoo.it")
CREDIT_LEFT_PATTERN = r'<tr class="active">\s*<td>([0-9 ,]+) (KiB|MiB|GiB)</td>\s*<td>([^<]*)</td>\s*</tr>'
+
def loadAccountInfo(self, user, req):
html = req.load("http://sdilej.cz/prehled_kreditu/")
diff --git a/module/plugins/accounts/DdlstorageCom.py b/module/plugins/accounts/DdlstorageCom.py
index f3eebc59b..9d90f4dab 100644
--- a/module/plugins/accounts/DdlstorageCom.py
+++ b/module/plugins/accounts/DdlstorageCom.py
@@ -15,12 +15,14 @@ class DdlstorageCom(XFSPAccount):
__name__ = "DdlstorageCom"
__version__ = "1.00"
__type__ = "account"
+
__description__ = """DDLStorage.com account plugin"""
__author_name__ = "stickell"
__author_mail__ = "l.stickell@yahoo.it"
MAIN_PAGE = "http://ddlstorage.com/"
+
def loadAccountInfo(self, user, req):
password = self.accounts[user]['password']
api_data = req.load('http://www.ddlstorage.com/cgi-bin/api_req.cgi',
diff --git a/module/plugins/accounts/DebridItaliaCom.py b/module/plugins/accounts/DebridItaliaCom.py
index 29aef4546..1ee0d96c2 100644
--- a/module/plugins/accounts/DebridItaliaCom.py
+++ b/module/plugins/accounts/DebridItaliaCom.py
@@ -24,12 +24,14 @@ class DebridItaliaCom(Account):
__name__ = "DebridItaliaCom"
__version__ = "0.1"
__type__ = "account"
+
__description__ = """Debriditalia.com account plugin"""
__author_name__ = "stickell"
__author_mail__ = "l.stickell@yahoo.it"
WALID_UNTIL_PATTERN = r"Premium valid till: (?P<D>[^|]+) \|"
+
def loadAccountInfo(self, user, req):
if 'Account premium not activated' in self.html:
return {"premium": False, "validuntil": None, "trafficleft": None}
diff --git a/module/plugins/accounts/DepositfilesCom.py b/module/plugins/accounts/DepositfilesCom.py
index 2b46807e8..beeae2a5f 100644
--- a/module/plugins/accounts/DepositfilesCom.py
+++ b/module/plugins/accounts/DepositfilesCom.py
@@ -25,10 +25,12 @@ class DepositfilesCom(Account):
__name__ = "DepositfilesCom"
__version__ = "0.2"
__type__ = "account"
+
__description__ = """Depositfiles.com account plugin"""
__author_name__ = ("mkaay", "stickell")
__author_mail__ = ("mkaay@mkaay.de", "l.stickell@yahoo.it")
+
def loadAccountInfo(self, user, req):
src = req.load("http://depositfiles.com/de/gold/")
validuntil = re.search(r"Sie haben Gold Zugang bis: <b>(.*?)</b></div>", src).group(1)
diff --git a/module/plugins/accounts/EasybytezCom.py b/module/plugins/accounts/EasybytezCom.py
index 9fa12fcda..9b41c9135 100644
--- a/module/plugins/accounts/EasybytezCom.py
+++ b/module/plugins/accounts/EasybytezCom.py
@@ -27,6 +27,7 @@ class EasybytezCom(Account):
__name__ = "EasybytezCom"
__version__ = "0.04"
__type__ = "account"
+
__description__ = """EasyBytez.com account plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
@@ -34,6 +35,7 @@ class EasybytezCom(Account):
VALID_UNTIL_PATTERN = r'Premium account expire:</TD><TD><b>([^<]+)</b>'
TRAFFIC_LEFT_PATTERN = r'<TR><TD>Traffic available today:</TD><TD><b>(?P<S>[^<]+)</b>'
+
def loadAccountInfo(self, user, req):
html = req.load("http://www.easybytez.com/?op=my_account", decode=True)
diff --git a/module/plugins/accounts/EgoFilesCom.py b/module/plugins/accounts/EgoFilesCom.py
index 9cb157516..cd568456f 100644
--- a/module/plugins/accounts/EgoFilesCom.py
+++ b/module/plugins/accounts/EgoFilesCom.py
@@ -11,12 +11,14 @@ class EgoFilesCom(Account):
__name__ = "EgoFilesCom"
__version__ = "0.2"
__type__ = "account"
+
__description__ = """Egofiles.com account plugin"""
__author_name__ = "stickell"
__author_mail__ = "l.stickell@yahoo.it"
PREMIUM_ACCOUNT_PATTERN = '<br/>\s*Premium: (?P<P>[^/]*) / Traffic left: (?P<T>[\d.]*) (?P<U>\w*)\s*\\n\s*<br/>'
+
def loadAccountInfo(self, user, req):
html = req.load("http://egofiles.com")
if 'You are logged as a Free User' in html:
diff --git a/module/plugins/accounts/EuroshareEu.py b/module/plugins/accounts/EuroshareEu.py
index 779e2227c..f7ff456f9 100644
--- a/module/plugins/accounts/EuroshareEu.py
+++ b/module/plugins/accounts/EuroshareEu.py
@@ -25,10 +25,12 @@ class EuroshareEu(Account):
__name__ = "EuroshareEu"
__version__ = "0.01"
__type__ = "account"
+
__description__ = """Euroshare.eu account plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
+
def loadAccountInfo(self, user, req):
self.relogin(user)
html = req.load("http://euroshare.eu/customer-zone/settings/")
diff --git a/module/plugins/accounts/FastixRu.py b/module/plugins/accounts/FastixRu.py
index 6aec55a84..9e8d1f4fe 100644
--- a/module/plugins/accounts/FastixRu.py
+++ b/module/plugins/accounts/FastixRu.py
@@ -8,10 +8,12 @@ class FastixRu(Account):
__name__ = "FastixRu"
__version__ = "0.02"
__type__ = "account"
+
__description__ = """Fastix account plugin"""
__author_name__ = "Massimo Rosamilia"
__author_mail__ = "max@spiritix.eu"
+
def loadAccountInfo(self, user, req):
data = self.getAccountData(user)
page = req.load("http://fastix.ru/api_v2/?apikey=%s&sub=getaccountdetails" % (data['api']))
diff --git a/module/plugins/accounts/FastshareCz.py b/module/plugins/accounts/FastshareCz.py
index d8bb542c0..cf7854b3c 100644
--- a/module/plugins/accounts/FastshareCz.py
+++ b/module/plugins/accounts/FastshareCz.py
@@ -24,12 +24,14 @@ class FastshareCz(Account):
__name__ = "FastshareCz"
__version__ = "0.03"
__type__ = "account"
+
__description__ = """Fastshare.cz account plugin"""
__author_name__ = ("zoidberg", "stickell")
__author_mail__ = ("zoidberg@mujmail.cz", "l.stickell@yahoo.it")
CREDIT_PATTERN = r'(?:Kredit|Credit)\s*</td>\s*<td[^>]*>([\d. \w]+)&nbsp;'
+
def loadAccountInfo(self, user, req):
html = req.load("http://www.fastshare.cz/user", decode=True)
diff --git a/module/plugins/accounts/File4safeCom.py b/module/plugins/accounts/File4safeCom.py
index 6a11493d2..158d7be3b 100644
--- a/module/plugins/accounts/File4safeCom.py
+++ b/module/plugins/accounts/File4safeCom.py
@@ -7,6 +7,7 @@ class File4safeCom(XFSPAccount):
__name__ = "File4safeCom"
__version__ = "0.01"
__type__ = "account"
+
__description__ = """File4safe.com account plugin"""
__author_name__ = "stickell"
__author_mail__ = "l.stickell@yahoo.it"
diff --git a/module/plugins/accounts/FilecloudIo.py b/module/plugins/accounts/FilecloudIo.py
index 17eda5ae3..b8bad5c4c 100644
--- a/module/plugins/accounts/FilecloudIo.py
+++ b/module/plugins/accounts/FilecloudIo.py
@@ -23,10 +23,12 @@ class FilecloudIo(Account):
__name__ = "FilecloudIo"
__version__ = "0.02"
__type__ = "account"
+
__description__ = """FilecloudIo account plugin"""
__author_name__ = ("zoidberg", "stickell")
__author_mail__ = ("zoidberg@mujmail.cz", "l.stickell@yahoo.it")
+
def loadAccountInfo(self, user, req):
# It looks like the first API request always fails, so we retry 5 times, it should work on the second try
for _ in xrange(5):
diff --git a/module/plugins/accounts/FilefactoryCom.py b/module/plugins/accounts/FilefactoryCom.py
index 40626fe1e..be96d8a52 100644
--- a/module/plugins/accounts/FilefactoryCom.py
+++ b/module/plugins/accounts/FilefactoryCom.py
@@ -26,12 +26,14 @@ class FilefactoryCom(Account):
__name__ = "FilefactoryCom"
__version__ = "0.14"
__type__ = "account"
+
__description__ = """Filefactory.com account plugin"""
__author_name__ = ("zoidberg", "stickell")
__author_mail__ = ("zoidberg@mujmail.cz", "l.stickell@yahoo.it")
VALID_UNTIL_PATTERN = r'Premium valid until: <strong>(?P<d>\d{1,2})\w{1,2} (?P<m>\w{3}), (?P<y>\d{4})</strong>'
+
def loadAccountInfo(self, user, req):
html = req.load("http://www.filefactory.com/account/")
diff --git a/module/plugins/accounts/FilejungleCom.py b/module/plugins/accounts/FilejungleCom.py
index 9ca35537a..e105d1e26 100644
--- a/module/plugins/accounts/FilejungleCom.py
+++ b/module/plugins/accounts/FilejungleCom.py
@@ -25,6 +25,7 @@ class FilejungleCom(Account):
__name__ = "FilejungleCom"
__version__ = "0.11"
__type__ = "account"
+
__description__ = """Filejungle.com account plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
@@ -35,6 +36,7 @@ class FilejungleCom(Account):
TRAFFIC_LEFT_PATTERN = r'"/extend_premium\.php">Until (\d+ [A-Za-z]+ \d+)<br'
LOGIN_FAILED_PATTERN = r'<span htmlfor="loginUser(Name|Password)" generated="true" class="fail_info">'
+
def loadAccountInfo(self, user, req):
html = req.load(self.URL + "dashboard.php")
found = re.search(self.TRAFFIC_LEFT_PATTERN, html)
diff --git a/module/plugins/accounts/FilerNet.py b/module/plugins/accounts/FilerNet.py
index 747051e94..475f01301 100644
--- a/module/plugins/accounts/FilerNet.py
+++ b/module/plugins/accounts/FilerNet.py
@@ -25,6 +25,7 @@ class FilerNet(Account):
__name__ = "FilerNet"
__version__ = "0.01"
__type__ = "account"
+
__description__ = """Filer.net account plugin"""
__author_name__ = "stickell"
__author_mail__ = "l.stickell@yahoo.it"
@@ -34,6 +35,7 @@ class FilerNet(Account):
TRAFFIC_PATTERN = r'Traffic</th>\s*<td>([^<]+)</td>'
FREE_PATTERN = r'Account Status</th>\s*<td>\s*Free'
+
def loadAccountInfo(self, user, req):
self.html = req.load("https://filer.net/profile")
diff --git a/module/plugins/accounts/FilerioCom.py b/module/plugins/accounts/FilerioCom.py
index 5f2164cf1..7288930f4 100644
--- a/module/plugins/accounts/FilerioCom.py
+++ b/module/plugins/accounts/FilerioCom.py
@@ -7,6 +7,7 @@ class FilerioCom(XFSPAccount):
__name__ = "FilerioCom"
__version__ = "0.01"
__type__ = "account"
+
__description__ = """FileRio.in account plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
diff --git a/module/plugins/accounts/FilesMailRu.py b/module/plugins/accounts/FilesMailRu.py
index fdcd284bd..a87aac8a8 100644
--- a/module/plugins/accounts/FilesMailRu.py
+++ b/module/plugins/accounts/FilesMailRu.py
@@ -22,10 +22,12 @@ class FilesMailRu(Account):
__name__ = "FilesMailRu"
__version__ = "0.1"
__type__ = "account"
+
__description__ = """Filesmail.ru account plugin"""
__author_name__ = "RaNaN"
__author_mail__ = "RaNaN@pyload.org"
+
def loadAccountInfo(self, user, req):
return {"validuntil": None, "trafficleft": None}
diff --git a/module/plugins/accounts/FileserveCom.py b/module/plugins/accounts/FileserveCom.py
index a8b2b4529..f91f5b703 100644
--- a/module/plugins/accounts/FileserveCom.py
+++ b/module/plugins/accounts/FileserveCom.py
@@ -25,10 +25,12 @@ class FileserveCom(Account):
__name__ = "FileserveCom"
__version__ = "0.2"
__type__ = "account"
+
__description__ = """Fileserve.com account plugin"""
__author_name__ = "mkaay"
__author_mail__ = "mkaay@mkaay.de"
+
def loadAccountInfo(self, user, req):
data = self.getAccountData(user)
diff --git a/module/plugins/accounts/FourSharedCom.py b/module/plugins/accounts/FourSharedCom.py
index c901a4d5c..b8a0c33f6 100644
--- a/module/plugins/accounts/FourSharedCom.py
+++ b/module/plugins/accounts/FourSharedCom.py
@@ -23,10 +23,12 @@ class FourSharedCom(Account):
__name__ = "FourSharedCom"
__version__ = "0.01"
__type__ = "account"
+
__description__ = """FourShared.com account plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
+
def loadAccountInfo(self, user, req):
#fixme
return {"validuntil": -1, "trafficleft": -1, "premium": False}
diff --git a/module/plugins/accounts/FreakshareCom.py b/module/plugins/accounts/FreakshareCom.py
index 67a7a1444..2987b21eb 100644
--- a/module/plugins/accounts/FreakshareCom.py
+++ b/module/plugins/accounts/FreakshareCom.py
@@ -24,10 +24,12 @@ class FreakshareCom(Account):
__name__ = "FreakshareCom"
__version__ = "0.1"
__type__ = "account"
+
__description__ = """Freakshare.com account plugin"""
__author_name__ = "RaNaN"
__author_mail__ = "RaNaN@pyload.org"
+
def loadAccountInfo(self, user, req):
page = req.load("http://freakshare.com/")
diff --git a/module/plugins/accounts/FreeWayMe.py b/module/plugins/accounts/FreeWayMe.py
index 58dfb93fd..8a7d46aa1 100644
--- a/module/plugins/accounts/FreeWayMe.py
+++ b/module/plugins/accounts/FreeWayMe.py
@@ -23,10 +23,12 @@ class FreeWayMe(Account):
__name__ = "FreeWayMe"
__version__ = "0.11"
__type__ = "account"
+
__description__ = """FreeWayMe account plugin"""
__author_name__ = "Nicolas Giese"
__author_mail__ = "james@free-way.me"
+
def loadAccountInfo(self, user, req):
status = self.getAccountStatus(user, req)
if not status:
diff --git a/module/plugins/accounts/FshareVn.py b/module/plugins/accounts/FshareVn.py
index c6f30c88e..27b74c907 100644
--- a/module/plugins/accounts/FshareVn.py
+++ b/module/plugins/accounts/FshareVn.py
@@ -26,6 +26,7 @@ class FshareVn(Account):
__name__ = "FshareVn"
__version__ = "0.07"
__type__ = "account"
+
__description__ = """Fshare.vn account plugin"""
__author_name__ = ("zoidberg", "stickell")
__author_mail__ = ("zoidberg@mujmail.cz", "l.stickell@yahoo.it")
@@ -35,6 +36,7 @@ class FshareVn(Account):
TRAFFIC_LEFT_PATTERN = ur'<dt>Tổng Dung Lượng Tài Khoản</dt>\s*<dd[^>]*>([0-9.]+) ([kKMG])B</dd>'
DIRECT_DOWNLOAD_PATTERN = ur'<input type="checkbox"\s*([^=>]*)[^>]*/>Kích hoạt download trực tiếp</dt>'
+
def loadAccountInfo(self, user, req):
self.html = req.load("http://www.fshare.vn/account_info.php", decode=True)
diff --git a/module/plugins/accounts/Ftp.py b/module/plugins/accounts/Ftp.py
index b454cba7a..93f161bb9 100644
--- a/module/plugins/accounts/Ftp.py
+++ b/module/plugins/accounts/Ftp.py
@@ -7,8 +7,10 @@ class Ftp(Account):
__name__ = "Ftp"
__version__ = "0.01"
__type__ = "account"
+
__description__ = """Ftp dummy account plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
+
login_timeout = info_threshold = 1000000
diff --git a/module/plugins/accounts/HellshareCz.py b/module/plugins/accounts/HellshareCz.py
index 5823c09f0..bf98dcadb 100644
--- a/module/plugins/accounts/HellshareCz.py
+++ b/module/plugins/accounts/HellshareCz.py
@@ -25,12 +25,14 @@ class HellshareCz(Account):
__name__ = "HellshareCz"
__version__ = "0.14"
__type__ = "account"
+
__description__ = """Hellshare.cz account plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
CREDIT_LEFT_PATTERN = r'<div class="credit-link">\s*<table>\s*<tr>\s*<th>(\d+|\d\d\.\d\d\.)</th>'
+
def loadAccountInfo(self, user, req):
self.relogin(user)
html = req.load("http://www.hellshare.com/")
diff --git a/module/plugins/accounts/HotfileCom.py b/module/plugins/accounts/HotfileCom.py
index fd675b7c6..515517be4 100644
--- a/module/plugins/accounts/HotfileCom.py
+++ b/module/plugins/accounts/HotfileCom.py
@@ -25,10 +25,12 @@ class HotfileCom(Account):
__name__ = "HotfileCom"
__version__ = "0.2"
__type__ = "account"
+
__description__ = """Hotfile.com account plugin"""
__author_name__ = ("mkaay", "JoKoT3")
__author_mail__ = ("mkaay@mkaay.de", "jokot3@gmail.com")
+
def loadAccountInfo(self, user, req):
resp = self.apiCall("getuserinfo", user=user)
if resp.startswith("."):
diff --git a/module/plugins/accounts/Http.py b/module/plugins/accounts/Http.py
index e2f236e41..b79a78c99 100644
--- a/module/plugins/accounts/Http.py
+++ b/module/plugins/accounts/Http.py
@@ -7,8 +7,10 @@ class Http(Account):
__name__ = "Http"
__version__ = "0.01"
__type__ = "account"
+
__description__ = """Http dummy account plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
+
login_timeout = info_threshold = 1000000
diff --git a/module/plugins/accounts/LetitbitNet.py b/module/plugins/accounts/LetitbitNet.py
index e4601ccbb..3bd096d55 100644
--- a/module/plugins/accounts/LetitbitNet.py
+++ b/module/plugins/accounts/LetitbitNet.py
@@ -22,10 +22,12 @@ class LetitbitNet(Account):
__name__ = "LetitbitNet"
__version__ = "0.01"
__type__ = "account"
+
__description__ = """Letitbit.net account plugin"""
__author_name__ = "stickell"
__author_mail__ = "l.stickell@yahoo.it"
+
def loadAccountInfo(self, user, req):
## DISABLED BECAUSE IT GET 'key exausted' EVEN IF VALID ##
# api_key = self.accounts[user]['password']
diff --git a/module/plugins/accounts/LinksnappyCom.py b/module/plugins/accounts/LinksnappyCom.py
index 63b9576d6..109478bde 100644
--- a/module/plugins/accounts/LinksnappyCom.py
+++ b/module/plugins/accounts/LinksnappyCom.py
@@ -10,10 +10,12 @@ class LinksnappyCom(Account):
__name__ = "LinksnappyCom"
__version__ = "0.02"
__type__ = "account"
+
__description__ = """Linksnappy.com account plugin"""
__author_name__ = "stickell"
__author_mail__ = "l.stickell@yahoo.it"
+
def loadAccountInfo(self, user, req):
data = self.getAccountData(user)
r = req.load('http://gen.linksnappy.com/lseAPI.php',
diff --git a/module/plugins/accounts/MegaDebridEu.py b/module/plugins/accounts/MegaDebridEu.py
index e5d7deb3c..769b6161b 100644
--- a/module/plugins/accounts/MegaDebridEu.py
+++ b/module/plugins/accounts/MegaDebridEu.py
@@ -22,6 +22,7 @@ class MegaDebridEu(Account):
__name__ = "MegaDebridEu"
__version__ = "0.2"
__type__ = "account"
+
__description__ = """mega-debrid.eu account plugin"""
__author_name__ = "D.Ducatel"
__author_mail__ = "dducatel@je-geek.fr"
@@ -29,6 +30,7 @@ class MegaDebridEu(Account):
# Define the base URL of MegaDebrid api
API_URL = "https://www.mega-debrid.eu/api.php"
+
def loadAccountInfo(self, user, req):
data = self.getAccountData(user)
jsonResponse = req.load(self.API_URL,
diff --git a/module/plugins/accounts/MegasharesCom.py b/module/plugins/accounts/MegasharesCom.py
index 59aefe374..125a21699 100644
--- a/module/plugins/accounts/MegasharesCom.py
+++ b/module/plugins/accounts/MegasharesCom.py
@@ -10,12 +10,14 @@ class MegasharesCom(Account):
__name__ = "MegasharesCom"
__version__ = "0.02"
__type__ = "account"
+
__description__ = """Megashares.com account plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
VALID_UNTIL_PATTERN = r'<p class="premium_info_box">Period Ends: (\w{3} \d{1,2}, \d{4})</p>'
+
def loadAccountInfo(self, user, req):
#self.relogin(user)
html = req.load("http://d01.megashares.com/myms.php", decode=True)
diff --git a/module/plugins/accounts/MovReelCom.py b/module/plugins/accounts/MovReelCom.py
index 3bcb3313d..3ded0d960 100644
--- a/module/plugins/accounts/MovReelCom.py
+++ b/module/plugins/accounts/MovReelCom.py
@@ -7,6 +7,7 @@ class MovReelCom(XFSPAccount):
__name__ = "MovReelCom"
__version__ = "0.01"
__type__ = "account"
+
__description__ = """Movreel.com account plugin"""
__author_name__ = "t4skforce"
__author_mail__ = "t4skforce1337[AT]gmail[DOT]com"
diff --git a/module/plugins/accounts/MultiDebridCom.py b/module/plugins/accounts/MultiDebridCom.py
index d38247051..da8a2046a 100644
--- a/module/plugins/accounts/MultiDebridCom.py
+++ b/module/plugins/accounts/MultiDebridCom.py
@@ -24,10 +24,12 @@ class MultiDebridCom(Account):
__name__ = "MultiDebridCom"
__version__ = "0.01"
__type__ = "account"
+
__description__ = """Multi-debrid.com account plugin"""
__author_name__ = "stickell"
__author_mail__ = "l.stickell@yahoo.it"
+
def loadAccountInfo(self, user, req):
if 'days_left' in self.json_data:
validuntil = int(time() + self.json_data['days_left'] * 24 * 60 * 60)
diff --git a/module/plugins/accounts/MultishareCz.py b/module/plugins/accounts/MultishareCz.py
index f3caf374e..08b8e5d52 100644
--- a/module/plugins/accounts/MultishareCz.py
+++ b/module/plugins/accounts/MultishareCz.py
@@ -26,6 +26,7 @@ class MultishareCz(Account):
__name__ = "MultishareCz"
__version__ = "0.02"
__type__ = "account"
+
__description__ = """Multishare.cz account plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
@@ -33,6 +34,7 @@ class MultishareCz(Account):
TRAFFIC_LEFT_PATTERN = r'<span class="profil-zvyrazneni">Kredit:</span>\s*<strong>(?P<S>[0-9,]+)&nbsp;(?P<U>\w+)</strong>'
ACCOUNT_INFO_PATTERN = r'<input type="hidden" id="(u_ID|u_hash)" name="[^"]*" value="([^"]+)">'
+
def loadAccountInfo(self, user, req):
#self.relogin(user)
html = req.load("http://www.multishare.cz/profil/", decode=True)
diff --git a/module/plugins/accounts/NetloadIn.py b/module/plugins/accounts/NetloadIn.py
index 2d88d7d3a..7c5ea69f8 100755
--- a/module/plugins/accounts/NetloadIn.py
+++ b/module/plugins/accounts/NetloadIn.py
@@ -25,10 +25,12 @@ class NetloadIn(Account):
__name__ = "NetloadIn"
__version__ = "0.22"
__type__ = "account"
+
__description__ = """Netload.in account plugin"""
__author_name__ = ("RaNaN", "CryNickSystems")
__author_mail__ = ("RaNaN@pyload.org", "webmaster@pcProfil.de")
+
def loadAccountInfo(self, user, req):
page = req.load("http://netload.in/index.php?id=2&lang=de")
left = r">(\d+) (Tag|Tage), (\d+) Stunden<"
diff --git a/module/plugins/accounts/OboomCom.py b/module/plugins/accounts/OboomCom.py
index b21e793fd..97f7e930a 100644
--- a/module/plugins/accounts/OboomCom.py
+++ b/module/plugins/accounts/OboomCom.py
@@ -11,10 +11,12 @@ class OboomCom(Account):
__name__ = "OboomCom"
__version__ = "0.1"
__type__ = "account"
+
__description__ = """Oboom.com account plugin"""
__author_name__ = "stanley"
__author_mail__ = "stanley.foerster@gmail.com"
+
def loadAccountData(self, user, req):
passwd = self.getAccountData(user)['password']
salt = passwd[::-1]
diff --git a/module/plugins/accounts/OneFichierCom.py b/module/plugins/accounts/OneFichierCom.py
index 22cbd51d3..be79423ef 100644
--- a/module/plugins/accounts/OneFichierCom.py
+++ b/module/plugins/accounts/OneFichierCom.py
@@ -11,6 +11,7 @@ class OneFichierCom(Account):
__name__ = "OneFichierCom"
__version__ = "0.1"
__type__ = "account"
+
__description__ = """1fichier.com account plugin"""
__author_name__ = "Elrick69"
__author_mail__ = "elrick69[AT]rocketmail[DOT]com"
diff --git a/module/plugins/accounts/OverLoadMe.py b/module/plugins/accounts/OverLoadMe.py
index 7c57fc88c..129074a0f 100644
--- a/module/plugins/accounts/OverLoadMe.py
+++ b/module/plugins/accounts/OverLoadMe.py
@@ -8,10 +8,12 @@ class OverLoadMe(Account):
__name__ = "OverLoadMe"
__version__ = "0.01"
__type__ = "account"
+
__description__ = """Over-Load.me account plugin"""
__author_name__ = "marley"
__author_mail__ = "marley@over-load.me"
+
def loadAccountInfo(self, user, req):
data = self.getAccountData(user)
page = req.load("https://api.over-load.me/account.php", get={"user": user, "auth": data['password']}).strip()
diff --git a/module/plugins/accounts/Premium4Me.py b/module/plugins/accounts/Premium4Me.py
index 0da442da6..9eab6f81f 100644
--- a/module/plugins/accounts/Premium4Me.py
+++ b/module/plugins/accounts/Premium4Me.py
@@ -7,10 +7,12 @@ class Premium4Me(Account):
__name__ = "Premium4Me"
__version__ = "0.03"
__type__ = "account"
+
__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)
diff --git a/module/plugins/accounts/PremiumizeMe.py b/module/plugins/accounts/PremiumizeMe.py
index 1da5d9002..83eade048 100644
--- a/module/plugins/accounts/PremiumizeMe.py
+++ b/module/plugins/accounts/PremiumizeMe.py
@@ -9,10 +9,12 @@ class PremiumizeMe(Account):
__name__ = "PremiumizeMe"
__version__ = "0.11"
__type__ = "account"
+
__description__ = """Premiumize.me account plugin"""
__author_name__ = "Florian Franzen"
__author_mail__ = "FlorianFranzen@gmail.com"
+
def loadAccountInfo(self, user, req):
# Get user data from premiumize.me
status = self.getAccountStatus(user, req)
diff --git a/module/plugins/accounts/QuickshareCz.py b/module/plugins/accounts/QuickshareCz.py
index 7eb82f439..8e5a18689 100644
--- a/module/plugins/accounts/QuickshareCz.py
+++ b/module/plugins/accounts/QuickshareCz.py
@@ -24,10 +24,12 @@ class QuickshareCz(Account):
__name__ = "QuickshareCz"
__version__ = "0.01"
__type__ = "account"
+
__description__ = """Quickshare.cz account plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
+
def loadAccountInfo(self, user, req):
html = req.load("http://www.quickshare.cz/premium", decode=True)
diff --git a/module/plugins/accounts/RPNetBiz.py b/module/plugins/accounts/RPNetBiz.py
index 49a294d14..08bedda7d 100644
--- a/module/plugins/accounts/RPNetBiz.py
+++ b/module/plugins/accounts/RPNetBiz.py
@@ -8,10 +8,12 @@ class RPNetBiz(Account):
__name__ = "RPNetBiz"
__version__ = "0.1"
__type__ = "account"
+
__description__ = """RPNet.biz account plugin"""
__author_name__ = "Dman"
__author_mail__ = "dmanugm@gmail.com"
+
def loadAccountInfo(self, user, req):
# Get account information from rpnet.biz
response = self.getAccountStatus(user, req)
diff --git a/module/plugins/accounts/RapidgatorNet.py b/module/plugins/accounts/RapidgatorNet.py
index c61169be3..05d31e6a0 100644
--- a/module/plugins/accounts/RapidgatorNet.py
+++ b/module/plugins/accounts/RapidgatorNet.py
@@ -23,12 +23,14 @@ class RapidgatorNet(Account):
__name__ = "RapidgatorNet"
__version__ = "0.04"
__type__ = "account"
+
__description__ = """Rapidgator.net account plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
API_URL = 'http://rapidgator.net/api/user'
+
def loadAccountInfo(self, user, req):
try:
sid = self.getAccountData(user).get('SID')
diff --git a/module/plugins/accounts/RapidshareCom.py b/module/plugins/accounts/RapidshareCom.py
index d537a2f23..6745813d9 100644
--- a/module/plugins/accounts/RapidshareCom.py
+++ b/module/plugins/accounts/RapidshareCom.py
@@ -22,10 +22,12 @@ class RapidshareCom(Account):
__name__ = "RapidshareCom"
__version__ = "0.22"
__type__ = "account"
+
__description__ = """Rapidshare.com account plugin"""
__author_name__ = "mkaay"
__author_mail__ = "mkaay@mkaay.de"
+
def loadAccountInfo(self, user, req):
data = self.getAccountData(user)
api_url_base = "http://api.rapidshare.com/cgi-bin/rsapi.cgi"
diff --git a/module/plugins/accounts/RarefileNet.py b/module/plugins/accounts/RarefileNet.py
index 494941aef..2424eaff5 100644
--- a/module/plugins/accounts/RarefileNet.py
+++ b/module/plugins/accounts/RarefileNet.py
@@ -7,6 +7,7 @@ class RarefileNet(XFSPAccount):
__name__ = "RarefileNet"
__version__ = "0.02"
__type__ = "account"
+
__description__ = """RareFile.net account plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
diff --git a/module/plugins/accounts/RealdebridCom.py b/module/plugins/accounts/RealdebridCom.py
index 75666f2fd..8ca4112e9 100644
--- a/module/plugins/accounts/RealdebridCom.py
+++ b/module/plugins/accounts/RealdebridCom.py
@@ -9,10 +9,12 @@ class RealdebridCom(Account):
__name__ = "RealdebridCom"
__version__ = "0.43"
__type__ = "account"
+
__description__ = """Real-Debrid.com account plugin"""
__author_name__ = "Devirex Hazzard"
__author_mail__ = "naibaf_11@yahoo.de"
+
def loadAccountInfo(self, user, req):
if self.pin_code:
return {"premium": False}
diff --git a/module/plugins/accounts/RehostTo.py b/module/plugins/accounts/RehostTo.py
index 5578cab7b..7a6263ab3 100644
--- a/module/plugins/accounts/RehostTo.py
+++ b/module/plugins/accounts/RehostTo.py
@@ -7,10 +7,12 @@ class RehostTo(Account):
__name__ = "RehostTo"
__version__ = "0.1"
__type__ = "account"
+
__description__ = """Rehost.to account plugin"""
__author_name__ = "RaNaN"
__author_mail__ = "RaNaN@pyload.org"
+
def loadAccountInfo(self, user, req):
data = self.getAccountData(user)
page = req.load("http://rehost.to/api.php?cmd=login&user=%s&pass=%s" % (user, data['password']))
diff --git a/module/plugins/accounts/RyushareCom.py b/module/plugins/accounts/RyushareCom.py
index a57e5fcec..fc092f82a 100644
--- a/module/plugins/accounts/RyushareCom.py
+++ b/module/plugins/accounts/RyushareCom.py
@@ -7,12 +7,14 @@ class RyushareCom(XFSPAccount):
__name__ = "RyushareCom"
__version__ = "0.03"
__type__ = "account"
+
__description__ = """Ryushare.com account plugin"""
__author_name__ = ("zoidberg", "trance4us")
__author_mail__ = ("zoidberg@mujmail.cz", "")
MAIN_PAGE = "http://ryushare.com/"
+
def login(self, user, data, req):
req.lastURL = "http://ryushare.com/login.python"
html = req.load("http://ryushare.com/login.python",
diff --git a/module/plugins/accounts/ShareRapidCom.py b/module/plugins/accounts/ShareRapidCom.py
index 11cef84e3..8f6e3cfc4 100644
--- a/module/plugins/accounts/ShareRapidCom.py
+++ b/module/plugins/accounts/ShareRapidCom.py
@@ -9,10 +9,12 @@ class ShareRapidCom(Account):
__name__ = "ShareRapidCom"
__version__ = "0.33"
__type__ = "account"
+
__description__ = """ShareRapid account plugin"""
__author_name__ = ("MikyWoW", "zoidberg")
__author_mail__ = ("mikywow@seznam.cz", "zoidberg@mujmail.cz")
+
login_timeout = 60
def loadAccountInfo(self, user, req):
diff --git a/module/plugins/accounts/ShareonlineBiz.py b/module/plugins/accounts/ShareonlineBiz.py
index f8c9f4fe0..9f706d186 100644
--- a/module/plugins/accounts/ShareonlineBiz.py
+++ b/module/plugins/accounts/ShareonlineBiz.py
@@ -22,10 +22,12 @@ class ShareonlineBiz(Account):
__name__ = "ShareonlineBiz"
__version__ = "0.24"
__type__ = "account"
+
__description__ = """Share-online.biz account plugin"""
__author_name__ = ("mkaay", "zoidberg")
__author_mail__ = ("mkaay@mkaay.de", "zoidberg@mujmail.cz")
+
def getUserAPI(self, user, req):
return req.load("http://api.share-online.biz/account.php",
{"username": user, "password": self.accounts[user]['password'], "act": "userDetails"})
diff --git a/module/plugins/accounts/SimplyPremiumCom.py b/module/plugins/accounts/SimplyPremiumCom.py
index 5706bb5cd..37aff09b3 100644
--- a/module/plugins/accounts/SimplyPremiumCom.py
+++ b/module/plugins/accounts/SimplyPremiumCom.py
@@ -22,10 +22,12 @@ class SimplyPremiumCom(Account):
__name__ = "SimplyPremiumCom"
__version__ = "0.01"
__type__ = "account"
+
__description__ = """Simply-Premium.com account plugin"""
__author_name__ = "EvolutionClip"
__author_mail__ = "evolutionclip@live.de"
+
def loadAccountInfo(self, user, req):
json_data = req.load('http://www.simply-premium.com/api/user.php?format=json')
self.logDebug("JSON data: " + json_data)
diff --git a/module/plugins/accounts/SimplydebridCom.py b/module/plugins/accounts/SimplydebridCom.py
index edd52b67e..a3803b088 100644
--- a/module/plugins/accounts/SimplydebridCom.py
+++ b/module/plugins/accounts/SimplydebridCom.py
@@ -9,10 +9,12 @@ class SimplydebridCom(Account):
__name__ = "SimplydebridCom"
__version__ = "0.1"
__type__ = "account"
+
__description__ = """Simply-Debrid.com account plugin"""
__author_name__ = "Kagenoshin"
__author_mail__ = "kagenoshin@gmx.ch"
+
def loadAccountInfo(self, user, req):
get_data = {'login': 2, 'u': self.loginname, 'p': self.password}
response = req.load("http://simply-debrid.com/api.php", get=get_data, decode=True)
diff --git a/module/plugins/accounts/StahnuTo.py b/module/plugins/accounts/StahnuTo.py
index c72745833..a177ae8e8 100644
--- a/module/plugins/accounts/StahnuTo.py
+++ b/module/plugins/accounts/StahnuTo.py
@@ -25,6 +25,7 @@ class StahnuTo(Account):
__name__ = "StahnuTo"
__version__ = "0.02"
__type__ = "account"
+
__description__ = """StahnuTo account plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
diff --git a/module/plugins/accounts/TurbobitNet.py b/module/plugins/accounts/TurbobitNet.py
index 956978cf3..5da480180 100644
--- a/module/plugins/accounts/TurbobitNet.py
+++ b/module/plugins/accounts/TurbobitNet.py
@@ -25,6 +25,7 @@ class TurbobitNet(Account):
__name__ = "TurbobitNet"
__version__ = "0.01"
__type__ = "account"
+
__description__ = """TurbobitNet account plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
diff --git a/module/plugins/accounts/UlozTo.py b/module/plugins/accounts/UlozTo.py
index 6b1067f28..8476167b3 100644
--- a/module/plugins/accounts/UlozTo.py
+++ b/module/plugins/accounts/UlozTo.py
@@ -9,12 +9,14 @@ class UlozTo(Account):
__name__ = "UlozTo"
__version__ = "0.06"
__type__ = "account"
+
__description__ = """Uloz.to account plugin"""
__author_name__ = ("zoidberg", "pulpe")
__author_mail__ = "zoidberg@mujmail.cz"
TRAFFIC_LEFT_PATTERN = r'<li class="menu-kredit"><a href="/kredit" title="[^"]*?GB = ([0-9.]+) MB"'
+
def loadAccountInfo(self, user, req):
#this cookie gets lost somehow after each request
self.phpsessid = req.cj.getCookie("ULOSESSID")
diff --git a/module/plugins/accounts/UnrestrictLi.py b/module/plugins/accounts/UnrestrictLi.py
index afc2f2a18..ac2d2d82a 100644
--- a/module/plugins/accounts/UnrestrictLi.py
+++ b/module/plugins/accounts/UnrestrictLi.py
@@ -22,10 +22,12 @@ class UnrestrictLi(Account):
__name__ = "UnrestrictLi"
__version__ = "0.03"
__type__ = "account"
+
__description__ = """Unrestrict.li account plugin"""
__author_name__ = "stickell"
__author_mail__ = "l.stickell@yahoo.it"
+
def loadAccountInfo(self, user, req):
json_data = req.load('http://unrestrict.li/api/jdownloader/user.php?format=json')
self.logDebug("JSON data: " + json_data)
diff --git a/module/plugins/accounts/UploadedTo.py b/module/plugins/accounts/UploadedTo.py
index 382b01052..bde76be9f 100644
--- a/module/plugins/accounts/UploadedTo.py
+++ b/module/plugins/accounts/UploadedTo.py
@@ -25,10 +25,12 @@ class UploadedTo(Account):
__name__ = "UploadedTo"
__version__ = "0.26"
__type__ = "account"
+
__description__ = """Uploaded.to account plugin"""
__author_name__ = "mkaay"
__author_mail__ = "mkaay@mkaay.de"
+
def loadAccountInfo(self, user, req):
req.load("http://uploaded.net/language/en")
diff --git a/module/plugins/accounts/UploadheroCom.py b/module/plugins/accounts/UploadheroCom.py
index 0cec8ca6d..681ef6f6a 100644
--- a/module/plugins/accounts/UploadheroCom.py
+++ b/module/plugins/accounts/UploadheroCom.py
@@ -11,10 +11,12 @@ class UploadheroCom(Account):
__name__ = "UploadheroCom"
__version__ = "0.2"
__type__ = "account"
+
__description__ = """Uploadhero.co account plugin"""
__author_name__ = "mcmyst"
__author_mail__ = "mcmyst@hotmail.fr"
+
def loadAccountInfo(self, user, req):
premium_pattern = re.compile('Il vous reste <span class="bleu">([0-9]+)</span> jours premium.')
diff --git a/module/plugins/accounts/UploadingCom.py b/module/plugins/accounts/UploadingCom.py
index c9f5a9ede..f07c2941a 100644
--- a/module/plugins/accounts/UploadingCom.py
+++ b/module/plugins/accounts/UploadingCom.py
@@ -25,10 +25,12 @@ class UploadingCom(Account):
__name__ = "UploadingCom"
__version__ = "0.1"
__type__ = "account"
+
__description__ = """Uploading.com account plugin"""
__author_name__ = "mkaay"
__author_mail__ = "mkaay@mkaay.de"
+
def loadAccountInfo(self, user, req):
src = req.load("http://uploading.com/")
premium = True
diff --git a/module/plugins/accounts/UptoboxCom.py b/module/plugins/accounts/UptoboxCom.py
index 3757ae0aa..16016f41d 100644
--- a/module/plugins/accounts/UptoboxCom.py
+++ b/module/plugins/accounts/UptoboxCom.py
@@ -7,6 +7,7 @@ class UptoboxCom(XFSPAccount):
__name__ = "UptoboxCom"
__version__ = "0.02"
__type__ = "account"
+
__description__ = """DDLStorage.com account plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
diff --git a/module/plugins/accounts/YibaishiwuCom.py b/module/plugins/accounts/YibaishiwuCom.py
index 6b7dfe5f2..4a0c72c34 100644
--- a/module/plugins/accounts/YibaishiwuCom.py
+++ b/module/plugins/accounts/YibaishiwuCom.py
@@ -24,12 +24,14 @@ class YibaishiwuCom(Account):
__name__ = "YibaishiwuCom"
__version__ = "0.01"
__type__ = "account"
+
__description__ = """115.com account plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
ACCOUNT_INFO_PATTERN = r'var USER_PERMISSION = {(.*?)}'
+
def loadAccountInfo(self, user, req):
#self.relogin(user)
html = req.load("http://115.com/", decode=True)
diff --git a/module/plugins/accounts/ZeveraCom.py b/module/plugins/accounts/ZeveraCom.py
index 74383ec22..11a224039 100644
--- a/module/plugins/accounts/ZeveraCom.py
+++ b/module/plugins/accounts/ZeveraCom.py
@@ -9,10 +9,12 @@ class ZeveraCom(Account):
__name__ = "ZeveraCom"
__version__ = "0.21"
__type__ = "account"
+
__description__ = """Zevera.com account plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
+
def loadAccountInfo(self, user, req):
data = self.getAPIData(req)
if data == "No traffic":
diff --git a/module/plugins/captcha/captcha.py b/module/plugins/captcha/captcha.py
index a4667b4ed..061228c99 100644
--- a/module/plugins/captcha/captcha.py
+++ b/module/plugins/captcha/captcha.py
@@ -301,7 +301,6 @@ class OCR(object):
return letters
def correct(self, values, var=None):
-
if var:
result = var
else:
diff --git a/module/plugins/container/CCF.py b/module/plugins/container/CCF.py
index eb27aaae3..a55357af4 100644
--- a/module/plugins/container/CCF.py
+++ b/module/plugins/container/CCF.py
@@ -1,23 +1,26 @@
# -*- coding: utf-8 -*-
import re
-from urllib2 import build_opener
-
-from module.plugins.Container import Container
-from module.lib.MultipartPostHandler import MultipartPostHandler
from os import makedirs
from os.path import exists, join
+from urllib2 import build_opener
+
+from module.lib.MultipartPostHandler import MultipartPostHandler
+from module.plugins.Container import Container
class CCF(Container):
__name__ = "CCF"
__version__ = "0.2"
+
__pattern__ = r'.+\.ccf'
+
__description__ = """CCF container decrypter plugin"""
__author_name__ = "Willnix"
__author_mail__ = "Willnix@pyload.org"
+
def decrypt(self, pyfile):
infile = pyfile.url.replace("\n", "")
diff --git a/module/plugins/container/LinkList.py b/module/plugins/container/LinkList.py
index b8f1b9de5..7e418bd67 100644
--- a/module/plugins/container/LinkList.py
+++ b/module/plugins/container/LinkList.py
@@ -1,20 +1,24 @@
# -*- coding: utf-8 -*-
import codecs
-from module.utils import fs_encode
+
from module.plugins.Container import Container
+from module.utils import fs_encode
class LinkList(Container):
__name__ = "LinkList"
__version__ = "0.12"
+
__pattern__ = r'.+\.txt'
- __description__ = """Read link lists in txt format"""
__config__ = [("clear", "bool", "Clear Linklist after adding", False),
("encoding", "string", "File encoding (default utf-8)", "")]
+
+ __description__ = """Read link lists in txt format"""
__author_name__ = ("spoob", "jeix")
__author_mail__ = ("spoob@pyload.org", "jeix@hasnomail.com")
+
def decrypt(self, pyfile):
try:
file_enc = codecs.lookup(self.getConfig("encoding")).name
diff --git a/module/plugins/container/RSDF.py b/module/plugins/container/RSDF.py
index cc090a267..2444ec752 100644
--- a/module/plugins/container/RSDF.py
+++ b/module/plugins/container/RSDF.py
@@ -10,11 +10,14 @@ from module.plugins.Container import Container
class RSDF(Container):
__name__ = "RSDF"
__version__ = "0.22"
+
__pattern__ = r'.+\.rsdf'
+
__description__ = """RSDF container decrypter plugin"""
__author_name__ = ("RaNaN", "spoob")
__author_mail__ = ("RaNaN@pyload.org", "spoob@pyload.org")
+
def decrypt(self, pyfile):
from Crypto.Cipher import AES
diff --git a/module/plugins/crypter/BitshareComFolder.py b/module/plugins/crypter/BitshareComFolder.py
index 7139c26a6..2afe990df 100644
--- a/module/plugins/crypter/BitshareComFolder.py
+++ b/module/plugins/crypter/BitshareComFolder.py
@@ -19,9 +19,11 @@ from module.plugins.internal.SimpleCrypter import SimpleCrypter
class BitshareComFolder(SimpleCrypter):
__name__ = "BitshareComFolder"
+ __version__ = "0.01"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?bitshare\.com/\?d=\w+'
- __version__ = "0.01"
+
__description__ = """Bitshare.com folder decrypter plugin"""
__author_name__ = "stickell"
__author_mail__ = "l.stickell@yahoo.it"
diff --git a/module/plugins/crypter/C1neonCom.py b/module/plugins/crypter/C1neonCom.py
index 8923cfc32..fc1188a11 100644
--- a/module/plugins/crypter/C1neonCom.py
+++ b/module/plugins/crypter/C1neonCom.py
@@ -5,9 +5,11 @@ from module.plugins.internal.DeadCrypter import DeadCrypter
class C1neonCom(DeadCrypter):
__name__ = "C1neonCom"
+ __version__ = "0.05"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?c1neon.com/.*?'
- __version__ = "0.05"
+
__description__ = """C1neon.com decrypter plugin"""
__author_name__ = "godofdream"
__author_mail__ = "soilfiction@gmail.com"
diff --git a/module/plugins/crypter/ChipDe.py b/module/plugins/crypter/ChipDe.py
index 529ec6918..8e48b1085 100644
--- a/module/plugins/crypter/ChipDe.py
+++ b/module/plugins/crypter/ChipDe.py
@@ -6,13 +6,16 @@ from module.plugins.Crypter import Crypter
class ChipDe(Crypter):
__name__ = "ChipDe"
+ __version__ = "0.1"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?chip.de/video/.*\.html'
- __version__ = "0.1"
+
__description__ = """Chip.de decrypter plugin"""
__author_name__ = "4Christopher"
__author_mail__ = "4Christopher@gmx.de"
+
def decrypt(self, pyfile):
self.html = self.load(pyfile.url)
try:
diff --git a/module/plugins/crypter/CrockoComFolder.py b/module/plugins/crypter/CrockoComFolder.py
index e64e63534..8215e23c4 100644
--- a/module/plugins/crypter/CrockoComFolder.py
+++ b/module/plugins/crypter/CrockoComFolder.py
@@ -5,9 +5,11 @@ from module.plugins.internal.SimpleCrypter import SimpleCrypter
class CrockoComFolder(SimpleCrypter):
__name__ = "CrockoComFolder"
+ __version__ = "0.01"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?crocko.com/f/.*'
- __version__ = "0.01"
+
__description__ = """Crocko.com folder decrypter plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
diff --git a/module/plugins/crypter/CryptItCom.py b/module/plugins/crypter/CryptItCom.py
index 6f8fbaa1a..331ddd5c8 100644
--- a/module/plugins/crypter/CryptItCom.py
+++ b/module/plugins/crypter/CryptItCom.py
@@ -5,9 +5,11 @@ from module.plugins.internal.DeadCrypter import DeadCrypter
class CryptItCom(DeadCrypter):
__name__ = "CryptItCom"
+ __version__ = "0.11"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?crypt-it\.com/(s|e|d|c)/[\w]+'
- __version__ = "0.11"
+
__description__ = """Crypt-it.com decrypter plugin"""
__author_name__ = "jeix"
__author_mail__ = "jeix@hasnomail.de"
diff --git a/module/plugins/crypter/CzshareComFolder.py b/module/plugins/crypter/CzshareComFolder.py
index c3606fdab..c60d5a87d 100644
--- a/module/plugins/crypter/CzshareComFolder.py
+++ b/module/plugins/crypter/CzshareComFolder.py
@@ -6,9 +6,11 @@ from module.plugins.Crypter import Crypter
class CzshareComFolder(Crypter):
__name__ = "CzshareComFolder"
+ __version__ = "0.2"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?(czshare|sdilej)\.(com|cz)/folders/.*'
- __version__ = "0.2"
+
__description__ = """Czshare.com folder decrypter plugin, now Sdilej.cz"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
@@ -17,6 +19,7 @@ class CzshareComFolder(Crypter):
LINK_PATTERN = r'<td class="col2"><a href="([^"]+)">info</a></td>'
#NEXT_PAGE_PATTERN = r'<a class="next " href="/([^"]+)">&nbsp;</a>'
+
def decrypt(self, pyfile):
html = self.load(pyfile.url)
diff --git a/module/plugins/crypter/DDLMusicOrg.py b/module/plugins/crypter/DDLMusicOrg.py
index 27cff3f9d..fcdd507a7 100644
--- a/module/plugins/crypter/DDLMusicOrg.py
+++ b/module/plugins/crypter/DDLMusicOrg.py
@@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
import re
+
from time import sleep
from module.plugins.Crypter import Crypter
@@ -8,13 +9,16 @@ from module.plugins.Crypter import Crypter
class DDLMusicOrg(Crypter):
__name__ = "DDLMusicOrg"
+ __version__ = "0.3"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?ddl-music\.org/captcha/ddlm_cr\d\.php\?\d+\?\d+'
- __version__ = "0.3"
+
__description__ = """Ddl-music.org decrypter plugin"""
__author_name__ = "mkaay"
__author_mail__ = "mkaay@mkaay.de"
+
def setup(self):
self.multiDL = False
diff --git a/module/plugins/crypter/DailymotionBatch.py b/module/plugins/crypter/DailymotionBatch.py
index d9309af90..c86c966d8 100644
--- a/module/plugins/crypter/DailymotionBatch.py
+++ b/module/plugins/crypter/DailymotionBatch.py
@@ -25,13 +25,16 @@ from module.utils import save_join
class DailymotionBatch(Crypter):
__name__ = "DailymotionBatch"
+ __version__ = "0.01"
__type__ = "crypter"
+
__pattern__ = r'https?://(?:www\.)?dailymotion\.com/((playlists/)?(?P<TYPE>playlist|user)/)?(?P<ID>[\w^_]+)(?(TYPE)|#)'
- __version__ = "0.01"
+
__description__ = """Dailymotion.com channel & playlist decrypter"""
__author_name__ = "Walter Purcaro"
__author_mail__ = "vuolter@gmail.com"
+
def api_response(self, ref, req=None):
url = urljoin("https://api.dailymotion.com/", ref)
page = self.load(url, get=req)
diff --git a/module/plugins/crypter/DataHuFolder.py b/module/plugins/crypter/DataHuFolder.py
index 04ef152fc..553936b1a 100644
--- a/module/plugins/crypter/DataHuFolder.py
+++ b/module/plugins/crypter/DataHuFolder.py
@@ -21,9 +21,11 @@ from module.plugins.internal.SimpleCrypter import SimpleCrypter
class DataHuFolder(SimpleCrypter):
__name__ = "DataHuFolder"
+ __version__ = "0.03"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?data.hu/dir/\w+'
- __version__ = "0.03"
+
__description__ = """Data.hu folder decrypter plugin"""
__author_name__ = ("crash", "stickell")
__author_mail__ = "l.stickell@yahoo.it"
@@ -31,6 +33,7 @@ class DataHuFolder(SimpleCrypter):
LINK_PATTERN = r"<a href='(http://data\.hu/get/.+)' target='_blank'>\1</a>"
TITLE_PATTERN = ur'<title>(?P<title>.+) Let\xf6lt\xe9se</title>'
+
def decrypt(self, pyfile):
self.html = self.load(pyfile.url, decode=True)
diff --git a/module/plugins/crypter/DdlstorageComFolder.py b/module/plugins/crypter/DdlstorageComFolder.py
index ef43edc5b..4c79407e4 100644
--- a/module/plugins/crypter/DdlstorageComFolder.py
+++ b/module/plugins/crypter/DdlstorageComFolder.py
@@ -19,9 +19,11 @@ from module.plugins.internal.SimpleCrypter import SimpleCrypter
class DdlstorageComFolder(SimpleCrypter):
__name__ = "DdlstorageComFolder"
+ __version__ = "0.02"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?ddlstorage.com/folder/\w{10}'
- __version__ = "0.02"
+
__description__ = """DDLStorage.com folder decrypter plugin"""
__author_name__ = ("godofdream", "stickell")
__author_mail__ = ("soilfiction@gmail.com", "l.stickell@yahoo.it")
diff --git a/module/plugins/crypter/DepositfilesComFolder.py b/module/plugins/crypter/DepositfilesComFolder.py
index 74d199e12..bb08b627b 100644
--- a/module/plugins/crypter/DepositfilesComFolder.py
+++ b/module/plugins/crypter/DepositfilesComFolder.py
@@ -5,9 +5,11 @@ from module.plugins.internal.SimpleCrypter import SimpleCrypter
class DepositfilesComFolder(SimpleCrypter):
__name__ = "DepositfilesComFolder"
+ __version__ = "0.01"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?depositfiles.com/folders/\w+'
- __version__ = "0.01"
+
__description__ = """Depositfiles.com folder decrypter plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
diff --git a/module/plugins/crypter/Dereferer.py b/module/plugins/crypter/Dereferer.py
index 4b6309c17..6870f2f24 100644
--- a/module/plugins/crypter/Dereferer.py
+++ b/module/plugins/crypter/Dereferer.py
@@ -23,13 +23,16 @@ from module.plugins.Crypter import Crypter
class Dereferer(Crypter):
__name__ = "Dereferer"
+ __version__ = "0.1"
__type__ = "crypter"
+
__pattern__ = r'https?://([^/]+)/.*?(?P<url>(ht|f)tps?(://|%3A%2F%2F).*)'
- __version__ = "0.1"
+
__description__ = """Crypter for dereferers"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
+
def decrypt(self, pyfile):
link = re.match(self.__pattern__, pyfile.url).group('url')
self.core.files.addLinks([urllib.unquote(link).rstrip('+')], pyfile.package().id)
diff --git a/module/plugins/crypter/DlProtectCom.py b/module/plugins/crypter/DlProtectCom.py
index 5ef8eab21..6bd6bc5b5 100644
--- a/module/plugins/crypter/DlProtectCom.py
+++ b/module/plugins/crypter/DlProtectCom.py
@@ -15,6 +15,7 @@
###############################################################################
import re
+
from base64 import urlsafe_b64encode
from time import time
@@ -23,15 +24,18 @@ from module.plugins.internal.SimpleCrypter import SimpleCrypter
class DlProtectCom(SimpleCrypter):
__name__ = "DlProtectCom"
+ __version__ = "0.01"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?dl-protect\.com/((en|fr)/)?(?P<ID>\w+)'
- __version__ = "0.01"
+
__description__ = """Dl-protect.com decrypter plugin"""
__author_name__ = "Walter Purcaro"
__author_mail__ = "vuolter@gmail.com"
OFFLINE_PATTERN = r'>Unfortunately, the link you are looking for is not found'
+
def getLinks(self):
# Direct link with redirect
if not re.match(r"http://(?:www\.)?dl-protect\.com", self.req.http.lastEffectiveURL):
diff --git a/module/plugins/crypter/DontKnowMe.py b/module/plugins/crypter/DontKnowMe.py
index 4a4b6f292..d05355c2e 100644
--- a/module/plugins/crypter/DontKnowMe.py
+++ b/module/plugins/crypter/DontKnowMe.py
@@ -8,15 +8,18 @@ from module.plugins.Crypter import Crypter
class DontKnowMe(Crypter):
__name__ = "DontKnowMe"
+ __version__ = "0.1"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?dontknow.me/at/\?.+$'
- __version__ = "0.1"
+
__description__ = """DontKnow.me decrypter plugin"""
__author_name__ = "selaux"
__author_mail__ = None
LINK_PATTERN = r'http://dontknow.me/at/\?(.+)$'
+
def decrypt(self, pyfile):
link = re.findall(self.LINK_PATTERN, pyfile.url)[0]
self.core.files.addLinks([urllib.unquote(link)], pyfile.package().id)
diff --git a/module/plugins/crypter/DuckCryptInfo.py b/module/plugins/crypter/DuckCryptInfo.py
index bbf6e6b0d..6f5efdd1b 100644
--- a/module/plugins/crypter/DuckCryptInfo.py
+++ b/module/plugins/crypter/DuckCryptInfo.py
@@ -7,15 +7,18 @@ from module.plugins.Crypter import Crypter
class DuckCryptInfo(Crypter):
__name__ = "DuckCryptInfo"
+ __version__ = "0.02"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?duckcrypt.info/(folder|wait|link)/(\w+)/?(\w*)'
- __version__ = "0.02"
+
__description__ = """DuckCrypt.info decrypter plugin"""
__author_name__ = "godofdream"
__author_mail__ = "soilfiction@gmail.com"
TIMER_PATTERN = r'<span id="timer">(.*)</span>'
+
def decrypt(self, pyfile):
url = pyfile.url
# seems we don't need to wait
diff --git a/module/plugins/crypter/DuploadOrgFolder.py b/module/plugins/crypter/DuploadOrgFolder.py
index 4913bdf2e..f2b8da2bd 100644
--- a/module/plugins/crypter/DuploadOrgFolder.py
+++ b/module/plugins/crypter/DuploadOrgFolder.py
@@ -19,9 +19,11 @@ from module.plugins.internal.SimpleCrypter import SimpleCrypter
class DuploadOrgFolder(SimpleCrypter):
__name__ = "DuploadOrgFolder"
+ __version__ = "0.01"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?dupload\.org/folder/\d+/'
- __version__ = "0.01"
+
__description__ = """Dupload.org folder decrypter plugin"""
__author_name__ = "stickell"
__author_mail__ = "l.stickell@yahoo.it"
diff --git a/module/plugins/crypter/EasybytezComFolder.py b/module/plugins/crypter/EasybytezComFolder.py
index 7a8ee5424..7c78b7946 100644
--- a/module/plugins/crypter/EasybytezComFolder.py
+++ b/module/plugins/crypter/EasybytezComFolder.py
@@ -19,9 +19,11 @@ from module.plugins.internal.SimpleCrypter import SimpleCrypter
class EasybytezComFolder(SimpleCrypter):
__name__ = "EasybytezComFolder"
+ __version__ = "0.06"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?easybytez\.com/users/(?P<ID>\d+/\d+)'
- __version__ = "0.06"
+
__description__ = """Easybytez.com decrypter plugin"""
__author_name__ = "stickell"
__author_mail__ = "l.stickell@yahoo.it"
diff --git a/module/plugins/crypter/EmbeduploadCom.py b/module/plugins/crypter/EmbeduploadCom.py
index fbccf71aa..6126527a9 100644
--- a/module/plugins/crypter/EmbeduploadCom.py
+++ b/module/plugins/crypter/EmbeduploadCom.py
@@ -7,17 +7,20 @@ from module.network.HTTPRequest import BadHeader
class EmbeduploadCom(Crypter):
__name__ = "EmbeduploadCom"
+ __version__ = "0.02"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?embedupload.com/\?d=.*'
- __version__ = "0.02"
- __description__ = """EmbedUpload.com decrypter plugin"""
__config__ = [("preferedHoster", "str", "Prefered hoster list (bar-separated) ", "embedupload"),
("ignoredHoster", "str", "Ignored hoster list (bar-separated) ", "")]
+
+ __description__ = """EmbedUpload.com decrypter plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
LINK_PATTERN = r'<div id="([^"]+)"[^>]*>\s*<a href="([^"]+)" target="_blank" (?:class="DownloadNow"|style="color:red")>'
+
def decrypt(self, pyfile):
self.html = self.load(pyfile.url, decode=True)
tmp_links = []
diff --git a/module/plugins/crypter/FilebeerInfoFolder.py b/module/plugins/crypter/FilebeerInfoFolder.py
index f5818e072..7a7528066 100644
--- a/module/plugins/crypter/FilebeerInfoFolder.py
+++ b/module/plugins/crypter/FilebeerInfoFolder.py
@@ -5,9 +5,11 @@ from module.plugins.internal.DeadCrypter import DeadCrypter
class FilebeerInfoFolder(DeadCrypter):
__name__ = "FilebeerInfoFolder"
+ __version__ = "0.02"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?filebeer\.info/(\d+~f).*'
- __version__ = "0.02"
+
__description__ = """Filebeer.info folder decrypter plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
diff --git a/module/plugins/crypter/FilecloudIoFolder.py b/module/plugins/crypter/FilecloudIoFolder.py
index bd07b823e..d3df7c469 100644
--- a/module/plugins/crypter/FilecloudIoFolder.py
+++ b/module/plugins/crypter/FilecloudIoFolder.py
@@ -19,9 +19,11 @@ from module.plugins.internal.SimpleCrypter import SimpleCrypter
class FilecloudIoFolder(SimpleCrypter):
__name__ = "FilecloudIoFolder"
+ __version__ = "0.01"
__type__ = "crypter"
+
__pattern__ = r'https?://(?:www\.)?(filecloud\.io|ifile\.it)/_\w+'
- __version__ = "0.01"
+
__description__ = """Filecloud.io folder decrypter plugin"""
__author_name__ = "Walter Purcaro"
__author_mail__ = "vuolter@gmail.com"
diff --git a/module/plugins/crypter/FilefactoryComFolder.py b/module/plugins/crypter/FilefactoryComFolder.py
index 2147c48df..ce20ee6eb 100644
--- a/module/plugins/crypter/FilefactoryComFolder.py
+++ b/module/plugins/crypter/FilefactoryComFolder.py
@@ -5,9 +5,11 @@ from module.plugins.internal.SimpleCrypter import SimpleCrypter
class FilefactoryComFolder(SimpleCrypter):
__name__ = "FilefactoryComFolder"
+ __version__ = "0.2"
__type__ = "crypter"
+
__pattern__ = r'https?://(?:www\.)?filefactory\.com/(?:f|folder)/\w+'
- __version__ = "0.2"
+
__description__ = """Filefactory.com folder decrypter plugin"""
__author_name__ = "stickell"
__author_mail__ = "l.stickell@yahoo.it"
@@ -18,5 +20,6 @@ class FilefactoryComFolder(SimpleCrypter):
SH_COOKIES = [('.filefactory.com', 'locale', 'en_US.utf8')]
+
def loadPage(self, page_n):
return self.load(self.pyfile.url, get={'page': page_n})
diff --git a/module/plugins/crypter/FilerNetFolder.py b/module/plugins/crypter/FilerNetFolder.py
index c4cf658bd..77e7409e9 100644
--- a/module/plugins/crypter/FilerNetFolder.py
+++ b/module/plugins/crypter/FilerNetFolder.py
@@ -5,15 +5,18 @@ from module.plugins.internal.SimpleCrypter import SimpleCrypter
class FilerNetFolder(SimpleCrypter):
__name__ = "FilerNetFolder"
- __type__ = "crypter"
__version__ = "0.3"
- __description__ = """Filer.net decrypter plugin"""
+ __type__ = "crypter"
+
__pattern__ = r'https?://filer\.net/folder/\w{16}'
+
+ __description__ = """Filer.net decrypter plugin"""
__author_name_ = ("nath_schwarz", "stickell")
__author_mail_ = ("nathan.notwhite@gmail.com", "l.stickell@yahoo.it")
LINK_PATTERN = r'href="(/get/\w{16})">(?!<)'
TITLE_PATTERN = r'<h3>(?P<title>.+) - <small'
+
def getLinks(self):
return ['http://filer.net%s' % link for link in re.findall(self.LINK_PATTERN, self.html)]
diff --git a/module/plugins/crypter/FileserveComFolder.py b/module/plugins/crypter/FileserveComFolder.py
index 74d7806e6..30662f02d 100644
--- a/module/plugins/crypter/FileserveComFolder.py
+++ b/module/plugins/crypter/FileserveComFolder.py
@@ -7,9 +7,11 @@ from module.plugins.Crypter import Crypter
class FileserveComFolder(Crypter):
__name__ = "FileserveComFolder"
+ __version__ = "0.11"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?fileserve.com/list/\w+'
- __version__ = "0.11"
+
__description__ = """FileServe.com folder decrypter plugin"""
__author_name__ = "fionnc"
__author_mail__ = "fionnc@gmail.com"
@@ -17,6 +19,7 @@ class FileserveComFolder(Crypter):
FOLDER_PATTERN = r'<table class="file_list">(.*?)</table>'
LINK_PATTERN = r'<a href="([^"]+)" class="sheet_icon wbold">'
+
def decrypt(self, pyfile):
html = self.load(pyfile.url)
diff --git a/module/plugins/crypter/FilestubeCom.py b/module/plugins/crypter/FilestubeCom.py
index ac67c33c9..7576319e0 100644
--- a/module/plugins/crypter/FilestubeCom.py
+++ b/module/plugins/crypter/FilestubeCom.py
@@ -19,9 +19,11 @@ from module.plugins.internal.SimpleCrypter import SimpleCrypter
class FilestubeCom(SimpleCrypter):
__name__ = "FilestubeCom"
+ __version__ = "0.03"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?filestube\.(?:com|to)/\w+'
- __version__ = "0.03"
+
__description__ = """Filestube.com decrypter plugin"""
__author_name__ = "stickell"
__author_mail__ = "l.stickell@yahoo.it"
diff --git a/module/plugins/crypter/FiletramCom.py b/module/plugins/crypter/FiletramCom.py
index 5a587eda2..2491c1322 100644
--- a/module/plugins/crypter/FiletramCom.py
+++ b/module/plugins/crypter/FiletramCom.py
@@ -19,9 +19,11 @@ from module.plugins.internal.SimpleCrypter import SimpleCrypter
class FiletramCom(SimpleCrypter):
__name__ = "FiletramCom"
+ __version__ = "0.01"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?filetram.com/[^/]+/.+'
- __version__ = "0.01"
+
__description__ = """Filetram.com decrypter plugin"""
__author_name__ = ("igel", "stickell")
__author_mail__ = ("igelkun@myopera.com", "l.stickell@yahoo.it")
diff --git a/module/plugins/crypter/FiredriveComFolder.py b/module/plugins/crypter/FiredriveComFolder.py
index 97ba11037..c0db299b0 100644
--- a/module/plugins/crypter/FiredriveComFolder.py
+++ b/module/plugins/crypter/FiredriveComFolder.py
@@ -21,9 +21,11 @@ from module.plugins.internal.SimpleCrypter import SimpleCrypter
class FiredriveComFolder(SimpleCrypter):
__name__ = "FiredriveComFolder"
+ __version__ = "0.01"
__type__ = "crypter"
+
__pattern__ = r'https?://(?:www\.)?(firedrive|putlocker)\.com/share/.+'
- __version__ = "0.01"
+
__description__ = """Firedrive.com folder decrypter plugin"""
__author_name__ = "Walter Purcaro"
__author_mail__ = "vuolter@gmail.com"
@@ -33,6 +35,7 @@ class FiredriveComFolder(SimpleCrypter):
OFFLINE_PATTERN = r'class="sad_face_image"|>No such page here.<'
TEMP_OFFLINE_PATTERN = r'>(File Temporarily Unavailable|Server Error. Try again later)'
+
def getLinks(self):
return map(lambda x: "http://www.firedrive.com/%s/%s" %
("share" if x[0] == "folder" else "file", x[1]),
diff --git a/module/plugins/crypter/FourChanOrg.py b/module/plugins/crypter/FourChanOrg.py
index 010451c46..dc0cdcb6c 100644
--- a/module/plugins/crypter/FourChanOrg.py
+++ b/module/plugins/crypter/FourChanOrg.py
@@ -1,4 +1,6 @@
# -*- coding: utf-8 -*-
+# Based on 4chandl by Roland Beermann
+# https://gist.github.com/enkore/3492599
import re
@@ -6,13 +8,16 @@ from module.plugins.Crypter import Crypter
class FourChanOrg(Crypter):
- # Based on 4chandl by Roland Beermann
- # https://gist.github.com/enkore/3492599
__name__ = "FourChanOrg"
- __type__ = "crypter"
__version__ = "0.3"
+ __type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?boards\.4chan.org/\w+/res/(\d+)'
+
__description__ = """4chan.org folder decrypter plugin"""
+ __author_name__ = None
+ __author_mail__ = None
+
def decrypt(self, pyfile):
pagehtml = self.load(pyfile.url)
diff --git a/module/plugins/crypter/FreakhareComFolder.py b/module/plugins/crypter/FreakhareComFolder.py
index c5df7ff17..ddc05199b 100644
--- a/module/plugins/crypter/FreakhareComFolder.py
+++ b/module/plugins/crypter/FreakhareComFolder.py
@@ -21,9 +21,11 @@ from module.plugins.internal.SimpleCrypter import SimpleCrypter
class FreakhareComFolder(SimpleCrypter):
__name__ = "FreakhareComFolder"
+ __version__ = "0.01"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?freakshare\.com/folder/.+'
- __version__ = "0.01"
+
__description__ = """Freakhare.com folder decrypter plugin"""
__author_name__ = "stickell"
__author_mail__ = "l.stickell@yahoo.it"
@@ -32,6 +34,7 @@ class FreakhareComFolder(SimpleCrypter):
TITLE_PATTERN = r'Folder:</b> (?P<title>.+)'
PAGES_PATTERN = r'Pages: +(?P<pages>\d+)'
+
def loadPage(self, page_n):
if not hasattr(self, 'f_id') and not hasattr(self, 'f_md5'):
m = re.search(r'http://freakshare.com/\?x=folder&f_id=(\d+)&f_md5=(\w+)', self.html)
diff --git a/module/plugins/crypter/FreetexthostCom.py b/module/plugins/crypter/FreetexthostCom.py
index e5c9c3d21..d03805722 100644
--- a/module/plugins/crypter/FreetexthostCom.py
+++ b/module/plugins/crypter/FreetexthostCom.py
@@ -21,13 +21,16 @@ from module.plugins.internal.SimpleCrypter import SimpleCrypter
class FreetexthostCom(SimpleCrypter):
__name__ = "FreetexthostCom"
+ __version__ = "0.01"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?freetexthost\.com/\w+'
- __version__ = "0.01"
+
__description__ = """Freetexthost.com decrypter plugin"""
__author_name__ = "stickell"
__author_mail__ = "l.stickell@yahoo.it"
+
def getLinks(self):
m = re.search(r'<div id="contentsinner">\s*(.+)<div class="viewcount">', self.html, re.DOTALL)
if not m:
diff --git a/module/plugins/crypter/FshareVnFolder.py b/module/plugins/crypter/FshareVnFolder.py
index 6e67905d9..9f5162125 100644
--- a/module/plugins/crypter/FshareVnFolder.py
+++ b/module/plugins/crypter/FshareVnFolder.py
@@ -5,9 +5,11 @@ from module.plugins.internal.SimpleCrypter import SimpleCrypter
class FshareVnFolder(SimpleCrypter):
__name__ = "FshareVnFolder"
+ __version__ = "0.01"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?fshare.vn/folder/.*'
- __version__ = "0.01"
+
__description__ = """Fshare.vn folder decrypter plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
diff --git a/module/plugins/crypter/GooGl.py b/module/plugins/crypter/GooGl.py
index 343bce5fd..37531c11e 100644
--- a/module/plugins/crypter/GooGl.py
+++ b/module/plugins/crypter/GooGl.py
@@ -20,15 +20,18 @@ from module.common.json_layer import json_loads
class GooGl(Crypter):
__name__ = "GooGl"
+ __version__ = "0.01"
__type__ = "crypter"
+
__pattern__ = r'https?://(?:www\.)?goo\.gl/\w+'
- __version__ = "0.01"
+
__description__ = """Goo.gl decrypter plugin"""
__author_name__ = "stickell"
__author_mail__ = "l.stickell@yahoo.it"
API_URL = "https://www.googleapis.com/urlshortener/v1/url"
+
def decrypt(self, pyfile):
rep = self.load(self.API_URL, get={'shortUrl': pyfile.url})
self.logDebug('JSON data: ' + rep)
diff --git a/module/plugins/crypter/HoerbuchIn.py b/module/plugins/crypter/HoerbuchIn.py
index 06a15fc65..df81cc207 100644
--- a/module/plugins/crypter/HoerbuchIn.py
+++ b/module/plugins/crypter/HoerbuchIn.py
@@ -8,9 +8,11 @@ from module.lib.BeautifulSoup import BeautifulSoup, BeautifulStoneSoup
class HoerbuchIn(Crypter):
__name__ = "HoerbuchIn"
+ __version__ = "0.6"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?hoerbuch\.in/(wp/horbucher/\d+/.+/|tp/out.php\?.+|protection/folder_\d+\.html)'
- __version__ = "0.6"
+
__description__ = """Hoerbuch.in decrypter plugin"""
__author_name__ = ("spoob", "mkaay")
__author_mail__ = ("spoob@pyload.org", "mkaay@mkaay.de")
@@ -18,6 +20,7 @@ class HoerbuchIn(Crypter):
article = re.compile("http://(?:www\.)?hoerbuch\.in/wp/horbucher/\d+/.+/")
protection = re.compile("http://(?:www\.)?hoerbuch\.in/protection/folder_\d+.html")
+
def decrypt(self, pyfile):
self.pyfile = pyfile
diff --git a/module/plugins/crypter/HotfileFolderCom.py b/module/plugins/crypter/HotfileFolderCom.py
index 3a4a9d70a..02c937553 100644
--- a/module/plugins/crypter/HotfileFolderCom.py
+++ b/module/plugins/crypter/HotfileFolderCom.py
@@ -7,13 +7,16 @@ from module.plugins.Crypter import Crypter
class HotfileFolderCom(Crypter):
__name__ = "HotfileFolderCom"
+ __version__ = "0.1"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?hotfile.com/list/\w+/\w+'
- __version__ = "0.1"
+
__description__ = """Hotfile.com folder decrypter plugin"""
__author_name__ = "RaNaN"
__author_mail__ = "RaNaN@pyload.org"
+
def decrypt(self, pyfile):
html = self.load(pyfile.url)
diff --git a/module/plugins/crypter/ILoadTo.py b/module/plugins/crypter/ILoadTo.py
index a9547c2b2..e003e07f4 100644
--- a/module/plugins/crypter/ILoadTo.py
+++ b/module/plugins/crypter/ILoadTo.py
@@ -5,9 +5,11 @@ from module.plugins.internal.DeadCrypter import DeadCrypter
class ILoadTo(DeadCrypter):
__name__ = "ILoadTo"
+ __version__ = "0.11"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?iload\.to/go/\d+-[\w\.-]+/'
- __version__ = "0.11"
+
__description__ = """Iload.to decrypter plugin"""
__author_name__ = "hzpz"
__author_mail__ = None
diff --git a/module/plugins/crypter/ImgurComAlbum.py b/module/plugins/crypter/ImgurComAlbum.py
index 79306fc6c..394673586 100644
--- a/module/plugins/crypter/ImgurComAlbum.py
+++ b/module/plugins/crypter/ImgurComAlbum.py
@@ -6,16 +6,19 @@ from module.utils import uniqify
class ImgurComAlbum(SimpleCrypter):
__name__ = "ImgurComAlbum"
- __type__ = "crypter"
__version__ = "0.4"
- __description__ = """Imgur.com decrypter plugin"""
+ __type__ = "crypter"
+
__pattern__ = r'https?://(?:www\.|m\.)?imgur\.com/(a|gallery|)/?\w{5,7}'
+
+ __description__ = """Imgur.com decrypter plugin"""
__author_name_ = "nath_schwarz"
__author_mail_ = "nathan.notwhite@gmail.com"
TITLE_PATTERN = r'(?P<title>.+) - Imgur'
LINK_PATTERN = r'i\.imgur\.com/\w{7}s?\.(?:jpeg|jpg|png|gif|apng)'
+
def getLinks(self):
f = lambda url: "http://" + re.sub(r'(\w{7})s\.', r'\1.', url)
return uniqify(map(f, re.findall(self.LINK_PATTERN, self.html)))
diff --git a/module/plugins/crypter/LetitbitNetFolder.py b/module/plugins/crypter/LetitbitNetFolder.py
index 8ae2ad118..6ea27813c 100644
--- a/module/plugins/crypter/LetitbitNetFolder.py
+++ b/module/plugins/crypter/LetitbitNetFolder.py
@@ -6,9 +6,11 @@ from module.plugins.Crypter import Crypter
class LetitbitNetFolder(Crypter):
__name__ = "LetitbitNetFolder"
+ __version__ = "0.1"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?letitbit.net/folder/\w+'
- __version__ = "0.1"
+
__description__ = """Letitbit.net folder decrypter plugin"""
__author_name__ = ("DHMH", "z00nx")
__author_mail__ = ("webmaster@pcProfil.de", "z00nx0@gmail.com")
@@ -16,6 +18,7 @@ class LetitbitNetFolder(Crypter):
FOLDER_PATTERN = r'<table>(.*)</table>'
LINK_PATTERN = r'<a href="([^"]+)" target="_blank">'
+
def decrypt(self, pyfile):
html = self.load(pyfile.url)
diff --git a/module/plugins/crypter/LinkSaveIn.py b/module/plugins/crypter/LinkSaveIn.py
index 5fde4e958..6e024c766 100644
--- a/module/plugins/crypter/LinkSaveIn.py
+++ b/module/plugins/crypter/LinkSaveIn.py
@@ -17,9 +17,11 @@ from module.unescape import unescape
class LinkSaveIn(Crypter):
__name__ = "LinkSaveIn"
+ __version__ = "2.01"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?linksave.in/(?P<id>\w+)$'
- __version__ = "2.01"
+
__description__ = """LinkSave.in decrypter plugin"""
__author_name__ = "fragonib"
__author_mail__ = "fragonib[AT]yahoo[DOT]es"
@@ -29,6 +31,7 @@ class LinkSaveIn(Crypter):
_CRYPTED_KEY_ = "crypted"
HOSTER_NAME = "linksave.in"
+
def setup(self):
self.html = None
self.fileid = None
diff --git a/module/plugins/crypter/LinkdecrypterCom.py b/module/plugins/crypter/LinkdecrypterCom.py
index 1ec396962..96fe11951 100644
--- a/module/plugins/crypter/LinkdecrypterCom.py
+++ b/module/plugins/crypter/LinkdecrypterCom.py
@@ -21,8 +21,11 @@ from module.plugins.Crypter import Crypter
class LinkdecrypterCom(Crypter):
__name__ = "LinkdecrypterCom"
- __type__ = "crypter"
__version__ = "0.27"
+ __type__ = "crypter"
+
+ __pattern__ = None
+
__description__ = """Linkdecrypter.com"""
__author_name__ = ("zoidberg", "flowlee")
__author_mail__ = ("zoidberg@mujmail.cz", "")
@@ -32,6 +35,7 @@ class LinkdecrypterCom(Crypter):
CAPTCHA_PATTERN = r'<img class="captcha" src="(.+?)"(.*?)>'
REDIR_PATTERN = r'<i>(Click <a href="./">here</a> if your browser does not redirect you).</i>'
+
def decrypt(self, pyfile):
self.passwords = self.getPassword().splitlines()
diff --git a/module/plugins/crypter/LixIn.py b/module/plugins/crypter/LixIn.py
index 8fca7dc02..d3c41bd4c 100644
--- a/module/plugins/crypter/LixIn.py
+++ b/module/plugins/crypter/LixIn.py
@@ -7,9 +7,11 @@ from module.plugins.Crypter import Crypter
class LixIn(Crypter):
__name__ = "LixIn"
+ __version__ = "0.22"
__type__ = "crypter"
+
__pattern__ = r'http://(www.)?lix.in/(?P<id>.*)'
- __version__ = "0.22"
+
__description__ = """Lix.in decrypter plugin"""
__author_name__ = "spoob"
__author_mail__ = "spoob@pyload.org"
@@ -18,6 +20,7 @@ class LixIn(Crypter):
SUBMIT_PATTERN = r"value='continue.*?'"
LINK_PATTERN = r'name="ifram" src="(?P<link>.*?)"'
+
def decrypt(self, pyfile):
url = pyfile.url
diff --git a/module/plugins/crypter/LofCc.py b/module/plugins/crypter/LofCc.py
index a17d58884..91106dc51 100644
--- a/module/plugins/crypter/LofCc.py
+++ b/module/plugins/crypter/LofCc.py
@@ -5,9 +5,11 @@ from module.plugins.internal.DeadCrypter import DeadCrypter
class LofCc(DeadCrypter):
__name__ = "LofCc"
+ __version__ = "0.21"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?lof.cc/(.*)'
- __version__ = "0.21"
+
__description__ = """Lof.cc decrypter plugin"""
__author_name__ = "mkaay"
__author_mail__ = "mkaay@mkaay.de"
diff --git a/module/plugins/crypter/MBLinkInfo.py b/module/plugins/crypter/MBLinkInfo.py
index 8aa70e8ff..0162c111d 100644
--- a/module/plugins/crypter/MBLinkInfo.py
+++ b/module/plugins/crypter/MBLinkInfo.py
@@ -5,9 +5,11 @@ from module.plugins.internal.DeadCrypter import DeadCrypter
class MBLinkInfo(DeadCrypter):
__name__ = "MBLinkInfo"
+ __version__ = "0.03"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?mblink\.info/?\?id=(\d+)'
- __version__ = "0.03"
+
__description__ = """MBLink.info decrypter plugin"""
__author_name__ = ("Gummibaer", "stickell")
__author_mail__ = ("Gummibaer@wiki-bierkiste.de", "l.stickell@yahoo.it")
diff --git a/module/plugins/crypter/MediafireComFolder.py b/module/plugins/crypter/MediafireComFolder.py
index 1ab16f31f..728bd6bbb 100644
--- a/module/plugins/crypter/MediafireComFolder.py
+++ b/module/plugins/crypter/MediafireComFolder.py
@@ -8,9 +8,11 @@ from module.common.json_layer import json_loads
class MediafireComFolder(Crypter):
__name__ = "MediafireComFolder"
+ __version__ = "0.14"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?mediafire\.com/(folder/|\?sharekey=|\?\w{13}($|[/#]))'
- __version__ = "0.14"
+
__description__ = """Mediafire.com folder decrypter plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
diff --git a/module/plugins/crypter/Movie2kTo.py b/module/plugins/crypter/Movie2kTo.py
index 991e1e1ee..dcebf5e03 100644
--- a/module/plugins/crypter/Movie2kTo.py
+++ b/module/plugins/crypter/Movie2kTo.py
@@ -5,9 +5,11 @@ from module.plugins.internal.DeadCrypter import DeadCrypter
class Movie2kTo(DeadCrypter):
__name__ = "Movie2kTo"
+ __version__ = "0.51"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?movie2k\.to/(.*)\.html'
- __version__ = "0.51"
+
__description__ = """Movie2k.to decrypter plugin"""
__author_name__ = "4Christopher"
__author_mail__ = "4Christopher@gmx.de"
diff --git a/module/plugins/crypter/MultiUpOrg.py b/module/plugins/crypter/MultiUpOrg.py
index d08daaf75..ab23def8d 100644
--- a/module/plugins/crypter/MultiUpOrg.py
+++ b/module/plugins/crypter/MultiUpOrg.py
@@ -23,15 +23,18 @@ from module.plugins.internal.SimpleCrypter import SimpleCrypter
class MultiUpOrg(SimpleCrypter):
__name__ = "MultiUpOrg"
+ __version__ = "0.01"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?multiup\.org/(en|fr)/(?P<TYPE>project|download|miror)/\w+(/\w+)?'
- __version__ = "0.01"
+
__description__ = """MultiUp.org crypter plugin"""
__author_name__ = "Walter Purcaro"
__author_mail__ = "vuolter@gmail.com"
TITLE_PATTERN = r'<title>.*(Project|Projet|ownload|élécharger) (?P<title>.+?) (\(|- )'
+
def getLinks(self):
m_type = re.match(self.__pattern__, self.pyfile.url).group("TYPE")
diff --git a/module/plugins/crypter/MultiloadCz.py b/module/plugins/crypter/MultiloadCz.py
index 5e7051bad..e6ffbe9b0 100644
--- a/module/plugins/crypter/MultiloadCz.py
+++ b/module/plugins/crypter/MultiloadCz.py
@@ -6,18 +6,21 @@ from module.plugins.Crypter import Crypter
class MultiloadCz(Crypter):
__name__ = "MultiloadCz"
+ __version__ = "0.4"
__type__ = "crypter"
+
__pattern__ = r'http://(?:[^/]*\.)?multiload.cz/(stahnout|slozka)/.*'
- __version__ = "0.4"
- __description__ = """Multiload.cz decrypter plugin"""
__config__ = [("usedHoster", "str", "Prefered hoster list (bar-separated) ", ""),
("ignoredHoster", "str", "Ignored hoster list (bar-separated) ", "")]
+
+ __description__ = """Multiload.cz decrypter plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
FOLDER_PATTERN = r'<form action="" method="get"><textarea[^>]*>([^>]*)</textarea></form>'
LINK_PATTERN = r'<p class="manager-server"><strong>([^<]+)</strong></p><p class="manager-linky"><a href="([^"]+)">'
+
def decrypt(self, pyfile):
self.html = self.load(pyfile.url, decode=True)
new_links = []
diff --git a/module/plugins/crypter/MultiuploadCom.py b/module/plugins/crypter/MultiuploadCom.py
index 677080772..cdc685fab 100644
--- a/module/plugins/crypter/MultiuploadCom.py
+++ b/module/plugins/crypter/MultiuploadCom.py
@@ -9,17 +9,20 @@ from module.common.json_layer import json_loads
class MultiuploadCom(Crypter):
__name__ = "MultiuploadCom"
+ __version__ = "0.01"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?multiupload.com/(\w+)'
- __version__ = "0.01"
- __description__ = """MultiUpload.com decrypter plugin"""
__config__ = [("preferedHoster", "str", "Prefered hoster list (bar-separated) ", "multiupload"),
("ignoredHoster", "str", "Ignored hoster list (bar-separated) ", "")]
+
+ __description__ = """MultiUpload.com decrypter plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
ML_LINK_PATTERN = r'<div id="downloadbutton_" style=""><a href="([^"]+)"'
+
def decrypt(self, pyfile):
self.html = self.load(pyfile.url)
found = re.search(self.ML_LINK_PATTERN, self.html)
diff --git a/module/plugins/crypter/NCryptIn.py b/module/plugins/crypter/NCryptIn.py
index ec6533ffc..dc2f29519 100644
--- a/module/plugins/crypter/NCryptIn.py
+++ b/module/plugins/crypter/NCryptIn.py
@@ -5,25 +5,28 @@ import binascii
import re
from Crypto.Cipher import AES
+
from module.plugins.Crypter import Crypter
from module.plugins.internal.CaptchaService import ReCaptcha
class NCryptIn(Crypter):
__name__ = "NCryptIn"
+ __version__ = "1.32"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?ncrypt.in/(?P<type>folder|link|frame)-([^/\?]+)'
- __version__ = "1.32"
+
__description__ = """NCrypt.in decrypter plugin"""
__author_name__ = ("fragonib", "stickell")
__author_mail__ = ("fragonib[AT]yahoo[DOT]es", "l.stickell@yahoo.it")
- # Constants
- _JK_KEY_ = "jk"
- _CRYPTED_KEY_ = "crypted"
+ JK_KEY = "jk"
+ CRYPTED_KEY = "crypted"
NAME_PATTERN = r'<meta name="description" content="(?P<N>[^"]+)"'
+
def setup(self):
self.package = None
self.html = None
@@ -264,11 +267,11 @@ class NCryptIn(Crypter):
pattern = r'<input.*?name="%s".*?value="(.*?)"'
# Get jk
- jk_re = pattern % NCryptIn._JK_KEY_
+ jk_re = pattern % NCryptIn.JK_KEY
vjk = re.findall(jk_re, self.html)
# Get crypted
- crypted_re = pattern % NCryptIn._CRYPTED_KEY_
+ crypted_re = pattern % NCryptIn.CRYPTED_KEY
vcrypted = re.findall(crypted_re, self.html)
# Log and return
diff --git a/module/plugins/crypter/NetfolderIn.py b/module/plugins/crypter/NetfolderIn.py
index 286b9366b..4c7660ab5 100644
--- a/module/plugins/crypter/NetfolderIn.py
+++ b/module/plugins/crypter/NetfolderIn.py
@@ -7,15 +7,18 @@ from module.plugins.internal.SimpleCrypter import SimpleCrypter
class NetfolderIn(SimpleCrypter):
__name__ = "NetfolderIn"
+ __version__ = "0.6"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?netfolder.in/((?P<id1>\w+)/\w+|folder.php\?folder_id=(?P<id2>\w+))'
- __version__ = "0.6"
+
__description__ = """NetFolder.in decrypter plugin"""
__author_name__ = ("RaNaN", "fragonib")
__author_mail__ = ("RaNaN@pyload.org", "fragonib[AT]yahoo[DOT]es")
TITLE_PATTERN = r'<div class="Text">Inhalt des Ordners <span(.*)>(?P<title>.+)</span></div>'
+
def decrypt(self, pyfile):
# Request package
self.html = self.load(pyfile.url)
diff --git a/module/plugins/crypter/NosvideoCom.py b/module/plugins/crypter/NosvideoCom.py
index 20097c7bf..2656b9374 100644
--- a/module/plugins/crypter/NosvideoCom.py
+++ b/module/plugins/crypter/NosvideoCom.py
@@ -5,9 +5,11 @@ from module.plugins.internal.SimpleCrypter import SimpleCrypter
class NosvideoCom(SimpleCrypter):
__name__ = "NosvideoCom"
+ __version__ = "0.01"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?nosvideo\.com/\?v=\w+'
- __version__ = "0.01"
+
__description__ = """Nosvideo.com decrypter plugin"""
__author_name__ = "igel"
__author_mail__ = "igelkun@myopera.com"
diff --git a/module/plugins/crypter/OneKhDe.py b/module/plugins/crypter/OneKhDe.py
index 82fad86ce..b370df1f7 100644
--- a/module/plugins/crypter/OneKhDe.py
+++ b/module/plugins/crypter/OneKhDe.py
@@ -8,13 +8,16 @@ from module.plugins.Crypter import Crypter
class OneKhDe(Crypter):
__name__ = "OneKhDe"
+ __version__ = "0.1"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?1kh.de/f/'
- __version__ = "0.1"
+
__description__ = """1kh.de decrypter plugin"""
__author_name__ = "spoob"
__author_mail__ = "spoob@pyload.org"
+
def __init__(self, parent):
Crypter.__init__(self, parent)
self.parent = parent
diff --git a/module/plugins/crypter/OronComFolder.py b/module/plugins/crypter/OronComFolder.py
index f087370ac..988c5c959 100755
--- a/module/plugins/crypter/OronComFolder.py
+++ b/module/plugins/crypter/OronComFolder.py
@@ -5,9 +5,11 @@ from module.plugins.internal.DeadCrypter import DeadCrypter
class OronComFolder(DeadCrypter):
__name__ = "OronComFolder"
+ __version__ = "0.11"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?oron.com/folder/\w+'
- __version__ = "0.11"
+
__description__ = """Oron.com folder decrypter plugin"""
__author_name__ = "DHMH"
__author_mail__ = "webmaster@pcProfil.de"
diff --git a/module/plugins/crypter/PastebinCom.py b/module/plugins/crypter/PastebinCom.py
index e74f71a5c..172a4183f 100644
--- a/module/plugins/crypter/PastebinCom.py
+++ b/module/plugins/crypter/PastebinCom.py
@@ -19,9 +19,11 @@ from module.plugins.internal.SimpleCrypter import SimpleCrypter
class PastebinCom(SimpleCrypter):
__name__ = "PastebinCom"
+ __version__ = "0.01"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?pastebin\.com/\w+'
- __version__ = "0.01"
+
__description__ = """Pastebin.com decrypter plugin"""
__author_name__ = "stickell"
__author_mail__ = "l.stickell@yahoo.it"
diff --git a/module/plugins/crypter/QuickshareCzFolder.py b/module/plugins/crypter/QuickshareCzFolder.py
index a412a5d18..a8f97cf77 100644
--- a/module/plugins/crypter/QuickshareCzFolder.py
+++ b/module/plugins/crypter/QuickshareCzFolder.py
@@ -6,9 +6,11 @@ from module.plugins.Crypter import Crypter
class QuickshareCzFolder(Crypter):
__name__ = "QuickshareCzFolder"
+ __version__ = "0.1"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?quickshare.cz/slozka-\d+.*'
- __version__ = "0.1"
+
__description__ = """Quickshare.cz folder decrypter plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
@@ -16,6 +18,7 @@ class QuickshareCzFolder(Crypter):
FOLDER_PATTERN = r'<textarea[^>]*>(.*?)</textarea>'
LINK_PATTERN = r'(http://www.quickshare.cz/\S+)'
+
def decrypt(self, pyfile):
html = self.load(pyfile.url)
diff --git a/module/plugins/crypter/RSLayerCom.py b/module/plugins/crypter/RSLayerCom.py
index 13f4ed4bd..637caf2ce 100644
--- a/module/plugins/crypter/RSLayerCom.py
+++ b/module/plugins/crypter/RSLayerCom.py
@@ -5,9 +5,11 @@ from module.plugins.internal.DeadCrypter import DeadCrypter
class RSLayerCom(DeadCrypter):
__name__ = "RSLayerCom"
+ __version__ = "0.21"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?rs-layer.com/directory-'
- __version__ = "0.21"
+
__description__ = """RS-Layer.com decrypter plugin"""
__author_name__ = "hzpz"
__author_mail__ = None
diff --git a/module/plugins/crypter/RelinkUs.py b/module/plugins/crypter/RelinkUs.py
index 1187692a0..5474ef3b6 100644
--- a/module/plugins/crypter/RelinkUs.py
+++ b/module/plugins/crypter/RelinkUs.py
@@ -11,9 +11,11 @@ from module.plugins.Crypter import Crypter
class RelinkUs(Crypter):
__name__ = "RelinkUs"
+ __version__ = "3.0"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?relink.us/(f/|((view|go).php\?id=))(?P<id>.+)'
- __version__ = "3.0"
+
__description__ = """Relink.us decrypter plugin"""
__author_name__ = "fragonib"
__author_mail__ = "fragonib[AT]yahoo[DOT]es"
diff --git a/module/plugins/crypter/SafelinkingNet.py b/module/plugins/crypter/SafelinkingNet.py
index 022f3e5ff..55f4c0ff6 100644
--- a/module/plugins/crypter/SafelinkingNet.py
+++ b/module/plugins/crypter/SafelinkingNet.py
@@ -11,14 +11,17 @@ from module.lib.BeautifulSoup import BeautifulSoup
class SafelinkingNet(Crypter):
__name__ = "SafelinkingNet"
+ __version__ = "0.1"
__type__ = "crypter"
+
__pattern__ = r'https?://(?:www\.)?safelinking.net/([pd])/\w+'
- __version__ = "0.1"
+
__description__ = """Safelinking.net decrypter plugin"""
__author_name__ = "quareevo"
__author_mail__ = "quareevo@arcor.de"
- __Solvemedia_pattern__ = "solvemediaApiKey = '([\w\.\-_]+)';"
+ SOLVEMEDIA_PATTERN = "solvemediaApiKey = '([\w\.\-_]+)';"
+
def decrypt(self, pyfile):
url = pyfile.url
@@ -44,7 +47,7 @@ class SafelinkingNet(Crypter):
if "altcaptcha" in self.html:
for _ in xrange(5):
- m = re.search(self.__Solvemedia_pattern__, self.html)
+ m = re.search(self.SOLVEMEDIA_PATTERN, self.html)
if m:
captchaKey = m.group(1)
captcha = SolveMedia(self)
diff --git a/module/plugins/crypter/SecuredIn.py b/module/plugins/crypter/SecuredIn.py
index 771205ec8..1a6650195 100644
--- a/module/plugins/crypter/SecuredIn.py
+++ b/module/plugins/crypter/SecuredIn.py
@@ -5,9 +5,11 @@ from module.plugins.internal.DeadCrypter import DeadCrypter
class SecuredIn(DeadCrypter):
__name__ = "SecuredIn"
+ __version__ = "0.21"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?secured\.in/download-[\d]+-[\w]{8}\.html'
- __version__ = "0.21"
+
__description__ = """Secured.in decrypter plugin"""
__author_name__ = "mkaay"
__author_mail__ = "mkaay@mkaay.de"
diff --git a/module/plugins/crypter/SerienjunkiesOrg.py b/module/plugins/crypter/SerienjunkiesOrg.py
index ecca56209..ea76d30d0 100644
--- a/module/plugins/crypter/SerienjunkiesOrg.py
+++ b/module/plugins/crypter/SerienjunkiesOrg.py
@@ -1,18 +1,21 @@
# -*- coding: utf-8 -*-
+import random
import re
+
from time import sleep
-import random
-from module.plugins.Crypter import Crypter
+
from module.lib.BeautifulSoup import BeautifulSoup
+from module.plugins.Crypter import Crypter
from module.unescape import unescape
class SerienjunkiesOrg(Crypter):
__name__ = "SerienjunkiesOrg"
+ __version__ = "0.39"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?(serienjunkies.org|dokujunkies.org)/.*?'
- __version__ = "0.39"
__config__ = [("changeNameSJ", "Packagename;Show;Season;Format;Episode", "Take SJ.org name", "Show"),
("changeNameDJ", "Packagename;Show;Format;Episode", "Take DJ.org name", "Show"),
("randomPreferred", "bool", "Randomize Preferred-List", False),
@@ -21,10 +24,12 @@ class SerienjunkiesOrg(Crypter):
("hosterList", "str", "Preferred Hoster list (comma separated)",
"RapidshareCom,UploadedTo,NetloadIn,FilefactoryCom,FreakshareNet,FilebaseTo,HotfileCom,DepositfilesCom,EasyshareCom,KickloadCom"),
("ignoreList", "str", "Ignored Hoster list (comma separated)", "MegauploadCom")]
+
__description__ = """Serienjunkies.org decrypter plugin"""
__author_name__ = ("mkaay", "godofdream")
__author_mail__ = ("mkaay@mkaay.de", "soilfiction@gmail.com")
+
def setup(self):
self.multiDL = False
diff --git a/module/plugins/crypter/ShareLinksBiz.py b/module/plugins/crypter/ShareLinksBiz.py
index 4ea5955db..13327dd2b 100644
--- a/module/plugins/crypter/ShareLinksBiz.py
+++ b/module/plugins/crypter/ShareLinksBiz.py
@@ -10,13 +10,16 @@ from module.plugins.Crypter import Crypter
class ShareLinksBiz(Crypter):
__name__ = "ShareLinksBiz"
+ __version__ = "1.13"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?(share-links|s2l)\.biz/(?P<ID>_?\w+)'
- __version__ = "1.13"
+
__description__ = """Share-Links.biz decrypter plugin"""
__author_name__ = "fragonib"
__author_mail__ = "fragonib[AT]yahoo[DOT]es"
+
def setup(self):
self.baseUrl = None
self.fileId = None
diff --git a/module/plugins/crypter/ShareRapidComFolder.py b/module/plugins/crypter/ShareRapidComFolder.py
index 15c8dccde..e44402a52 100644
--- a/module/plugins/crypter/ShareRapidComFolder.py
+++ b/module/plugins/crypter/ShareRapidComFolder.py
@@ -5,9 +5,11 @@ from module.plugins.internal.SimpleCrypter import SimpleCrypter
class ShareRapidComFolder(SimpleCrypter):
__name__ = "ShareRapidComFolder"
+ __version__ = "0.01"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?((share(-?rapid\.(biz|com|cz|info|eu|net|org|pl|sk)|-(central|credit|free|net)\.cz|-ms\.net)|(s-?rapid|rapids)\.(cz|sk))|(e-stahuj|mediatack|premium-rapidshare|rapidshare-premium|qiuck)\.cz|kadzet\.com|stahuj-zdarma\.eu|strelci\.net|universal-share\.com)/(slozka/.+)'
- __version__ = "0.01"
+
__description__ = """Share-Rapid.com folder decrypter plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
diff --git a/module/plugins/crypter/SpeedLoadOrgFolder.py b/module/plugins/crypter/SpeedLoadOrgFolder.py
index 4bb1562ee..305397d3c 100644
--- a/module/plugins/crypter/SpeedLoadOrgFolder.py
+++ b/module/plugins/crypter/SpeedLoadOrgFolder.py
@@ -19,9 +19,11 @@ from module.plugins.internal.DeadCrypter import DeadCrypter
class SpeedLoadOrgFolder(DeadCrypter):
__name__ = "SpeedLoadOrgFolder"
+ __version__ = "0.3"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?speedload\.org/(\d+~f$|folder/\d+/)'
- __version__ = "0.3"
+
__description__ = """Speedload decrypter plugin"""
__author_name__ = "stickell"
__author_mail__ = "l.stickell@yahoo.it"
diff --git a/module/plugins/crypter/StealthTo.py b/module/plugins/crypter/StealthTo.py
index e97a741e0..d0820446e 100644
--- a/module/plugins/crypter/StealthTo.py
+++ b/module/plugins/crypter/StealthTo.py
@@ -7,13 +7,16 @@ from module.plugins.Crypter import Crypter
class StealthTo(Crypter):
__name__ = "StealthTo"
+ __version__ = "0.1"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?stealth.to/folder/'
- __version__ = "0.1"
+
__description__ = """Stealth.to decrypter plugin"""
__author_name__ = "spoob"
__author_mail__ = "spoob@pyload.org"
+
def __init__(self, parent):
Crypter.__init__(self, parent)
self.parent = parent
diff --git a/module/plugins/crypter/TnyCz.py b/module/plugins/crypter/TnyCz.py
index aed7c3cf9..3ff9aa5dd 100644
--- a/module/plugins/crypter/TnyCz.py
+++ b/module/plugins/crypter/TnyCz.py
@@ -22,15 +22,18 @@ import re
class TnyCz(SimpleCrypter):
__name__ = "TnyCz"
+ __version__ = "0.01"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?tny\.cz/\w+'
- __version__ = "0.01"
+
__description__ = """Tny.cz decrypter plugin"""
__author_name__ = "Walter Purcaro"
__author_mail__ = "vuolter@gmail.com"
TITLE_PATTERN = r'<title>(?P<title>.+) - .+</title>'
+
def getLinks(self):
m = re.search(r'<a id=\'save_paste\' href="(.+save\.php\?hash=.+)">', self.html)
return re.findall(".+", self.load(m.group(1), decode=True)) if m else None
diff --git a/module/plugins/crypter/TrailerzoneInfo.py b/module/plugins/crypter/TrailerzoneInfo.py
index 84a476a38..2c7bb2c9f 100644
--- a/module/plugins/crypter/TrailerzoneInfo.py
+++ b/module/plugins/crypter/TrailerzoneInfo.py
@@ -5,9 +5,11 @@ from module.plugins.internal.DeadCrypter import DeadCrypter
class TrailerzoneInfo(DeadCrypter):
__name__ = "TrailerzoneInfo"
+ __version__ = "0.03"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?trailerzone.info/.*?'
- __version__ = "0.03"
+
__description__ = """TrailerZone.info decrypter plugin"""
__author_name__ = "godofdream"
__author_mail__ = "soilfiction@gmail.com"
diff --git a/module/plugins/crypter/TurbobitNetFolder.py b/module/plugins/crypter/TurbobitNetFolder.py
index 2dcd65757..26923e8d4 100644
--- a/module/plugins/crypter/TurbobitNetFolder.py
+++ b/module/plugins/crypter/TurbobitNetFolder.py
@@ -22,15 +22,18 @@ from module.common.json_layer import json_loads
class TurbobitNetFolder(SimpleCrypter):
__name__ = "TurbobitNetFolder"
+ __version__ = "0.03"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?turbobit\.net/download/folder/(?P<ID>\w+)'
- __version__ = "0.03"
+
__description__ = """Turbobit.net folder decrypter plugin"""
__author_name__ = ("stickell", "Walter Purcaro")
__author_mail__ = ("l.stickell@yahoo.it", "vuolter@gmail.com")
TITLE_PATTERN = r"src='/js/lib/grid/icon/folder.png'> <span>(?P<title>.+?)</span>"
+
def _getLinks(self, id, page=1):
gridFile = self.load("http://turbobit.net/downloadfolder/gridFile",
get={"rootId": id, "rows": 200, "page": page}, decode=True)
diff --git a/module/plugins/crypter/TusfilesNetFolder.py b/module/plugins/crypter/TusfilesNetFolder.py
index 59aef3372..70b7bd4b9 100644
--- a/module/plugins/crypter/TusfilesNetFolder.py
+++ b/module/plugins/crypter/TusfilesNetFolder.py
@@ -23,9 +23,11 @@ from module.plugins.internal.SimpleCrypter import SimpleCrypter
class TusfilesNetFolder(SimpleCrypter):
__name__ = "TusfilesNetFolder"
+ __version__ = "0.02"
__type__ = "crypter"
+
__pattern__ = r'https?://(?:www\.)?tusfiles\.net/go/(?P<ID>\w+)/?'
- __version__ = "0.02"
+
__description__ = """Tusfiles.net folder decrypter plugin"""
__author_name__ = ("Walter Purcaro", "stickell")
__author_mail__ = ("vuolter@gmail.com", "l.stickell@yahoo.it")
@@ -36,6 +38,7 @@ class TusfilesNetFolder(SimpleCrypter):
URL_REPLACEMENTS = [(__pattern__, r'https://www.tusfiles.net/go/\g<ID>/')]
+
def loadPage(self, page_n):
return self.load(urljoin(self.pyfile.url, str(page_n)), decode=True)
diff --git a/module/plugins/crypter/UlozToFolder.py b/module/plugins/crypter/UlozToFolder.py
index 6c7729fee..6ba4b0819 100644
--- a/module/plugins/crypter/UlozToFolder.py
+++ b/module/plugins/crypter/UlozToFolder.py
@@ -6,9 +6,11 @@ from module.plugins.Crypter import Crypter
class UlozToFolder(Crypter):
__name__ = "UlozToFolder"
+ __version__ = "0.2"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?(uloz\.to|ulozto\.(cz|sk|net)|bagruj.cz|zachowajto.pl)/(m|soubory)/.*'
- __version__ = "0.2"
+
__description__ = """Uloz.to folder decrypter plugin"""
__author_name__ = "zoidberg"
__author_mail__ = "zoidberg@mujmail.cz"
@@ -17,6 +19,7 @@ class UlozToFolder(Crypter):
LINK_PATTERN = r'<br /><a href="/([^"]+)">[^<]+</a>'
NEXT_PAGE_PATTERN = r'<a class="next " href="/([^"]+)">&nbsp;</a>'
+
def decrypt(self, pyfile):
html = self.load(pyfile.url)
diff --git a/module/plugins/crypter/UploadedToFolder.py b/module/plugins/crypter/UploadedToFolder.py
index 97c77fdce..36dd9714a 100644
--- a/module/plugins/crypter/UploadedToFolder.py
+++ b/module/plugins/crypter/UploadedToFolder.py
@@ -21,9 +21,11 @@ from module.plugins.internal.SimpleCrypter import SimpleCrypter
class UploadedToFolder(SimpleCrypter):
__name__ = "UploadedToFolder"
+ __version__ = "0.3"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?(uploaded|ul)\.(to|net)/(f|folder|list)/(?P<id>\w+)'
- __version__ = "0.3"
+
__description__ = """UploadedTo decrypter plugin"""
__author_name__ = "stickell"
__author_mail__ = "l.stickell@yahoo.it"
@@ -31,6 +33,7 @@ class UploadedToFolder(SimpleCrypter):
PLAIN_PATTERN = r'<small class="date"><a href="(?P<plain>[\w/]+)" onclick='
TITLE_PATTERN = r'<title>(?P<title>[^<]+)</title>'
+
def decrypt(self, pyfile):
self.html = self.load(pyfile.url)
diff --git a/module/plugins/crypter/WiiReloadedOrg.py b/module/plugins/crypter/WiiReloadedOrg.py
index 7274b4a84..9cb0751d8 100644
--- a/module/plugins/crypter/WiiReloadedOrg.py
+++ b/module/plugins/crypter/WiiReloadedOrg.py
@@ -5,9 +5,11 @@ from module.plugins.internal.DeadCrypter import DeadCrypter
class WiiReloadedOrg(DeadCrypter):
__name__ = "WiiReloadedOrg"
+ __version__ = "0.11"
__type__ = "crypter"
+
__pattern__ = r'http://(?:www\.)?wii-reloaded\.org/protect/get\.php\?i=.+'
- __version__ = "0.11"
+
__description__ = """Wii-Reloaded.org decrypter plugin"""
__author_name__ = "hzpz"
__author_mail__ = None
diff --git a/module/plugins/crypter/XupPl.py b/module/plugins/crypter/XupPl.py
index c04fc69f8..09c3084ea 100644
--- a/module/plugins/crypter/XupPl.py
+++ b/module/plugins/crypter/XupPl.py
@@ -5,13 +5,16 @@ from module.plugins.Crypter import Crypter
class XupPl(Crypter):
__name__ = "XupPl"
+ __version__ = "0.1"
__type__ = "crypter"
+
__pattern__ = r'https?://(?:[^/]*\.)?xup\.pl/.*'
- __version__ = "0.1"
+
__description__ = """Xup.pl decrypter plugin"""
__author_name__ = "z00nx"
__author_mail__ = "z00nx0@gmail.com"
+
def decrypt(self, pyfile):
header = self.load(pyfile.url, just_header=True)
if 'location' in header:
diff --git a/module/plugins/crypter/YoutubeBatch.py b/module/plugins/crypter/YoutubeBatch.py
index dd5d937d5..dfac9140f 100644
--- a/module/plugins/crypter/YoutubeBatch.py
+++ b/module/plugins/crypter/YoutubeBatch.py
@@ -15,9 +15,10 @@
along with this program; if not, see <http://www.gnu.org/licenses/>.
"""
-from urlparse import urljoin
import re
+from urlparse import urljoin
+
from module.common.json_layer import json_loads
from module.plugins.Crypter import Crypter
from module.utils import save_join
@@ -27,16 +28,19 @@ API_URL = "AIzaSyCKnWLNlkX-L4oD1aEzqqhRw1zczeD6_k0"
class YoutubeBatch(Crypter):
__name__ = "YoutubeBatch"
+ __version__ = "1.00"
__type__ = "crypter"
+
__pattern__ = r'https?://(?:www\.|m\.)?youtube\.com/(?P<TYPE>user|playlist|view_play_list)(/|.*?[?&](?:list|p)=)(?P<ID>[\w-]+)'
- __version__ = "1.00"
- __description__ = """Youtube.com channel & playlist decrypter plugin"""
__config__ = [("likes", "bool", "Grab user (channel) liked videos", False),
("favorites", "bool", "Grab user (channel) favorite videos", False),
("uploads", "bool", "Grab channel unplaylisted videos", True)]
+
+ __description__ = """Youtube.com channel & playlist decrypter plugin"""
__author_name__ = "Walter Purcaro"
__author_mail__ = "vuolter@gmail.com"
+
def api_response(self, ref, req):
req.update({"key": API_KEY})
url = urljoin("https://www.googleapis.com/youtube/v3/", ref)
diff --git a/module/plugins/internal/CaptchaService.py b/module/plugins/internal/CaptchaService.py
index d8306bbb7..6586256f7 100644
--- a/module/plugins/internal/CaptchaService.py
+++ b/module/plugins/internal/CaptchaService.py
@@ -79,6 +79,7 @@ class AdsCaptcha(CaptchaService):
class SolveMedia(CaptchaService):
+
def challenge(self, src):
html = self.plugin.req.load("http://api.solvemedia.com/papi/challenge.noscript?k=%s" % src, cookies=True)
try: