From 8e47b0de30a25d0fd5dfb518bfe4e1e7beff93fd Mon Sep 17 00:00:00 2001 From: Walter Purcaro Date: Tue, 15 Jul 2014 16:27:44 +0200 Subject: Key attributes cleanup for account, container and crypter plugins --- module/plugins/crypter/BitshareComFolder.py | 4 +++- module/plugins/crypter/C1neonCom.py | 4 +++- module/plugins/crypter/ChipDe.py | 5 ++++- module/plugins/crypter/CrockoComFolder.py | 4 +++- module/plugins/crypter/CryptItCom.py | 4 +++- module/plugins/crypter/CzshareComFolder.py | 5 ++++- module/plugins/crypter/DDLMusicOrg.py | 6 +++++- module/plugins/crypter/DailymotionBatch.py | 5 ++++- module/plugins/crypter/DataHuFolder.py | 5 ++++- module/plugins/crypter/DdlstorageComFolder.py | 4 +++- module/plugins/crypter/DepositfilesComFolder.py | 4 +++- module/plugins/crypter/Dereferer.py | 5 ++++- module/plugins/crypter/DlProtectCom.py | 6 +++++- module/plugins/crypter/DontKnowMe.py | 5 ++++- module/plugins/crypter/DuckCryptInfo.py | 5 ++++- module/plugins/crypter/DuploadOrgFolder.py | 4 +++- module/plugins/crypter/EasybytezComFolder.py | 4 +++- module/plugins/crypter/EmbeduploadCom.py | 7 +++++-- module/plugins/crypter/FilebeerInfoFolder.py | 4 +++- module/plugins/crypter/FilecloudIoFolder.py | 4 +++- module/plugins/crypter/FilefactoryComFolder.py | 5 ++++- module/plugins/crypter/FilerNetFolder.py | 7 +++++-- module/plugins/crypter/FileserveComFolder.py | 5 ++++- module/plugins/crypter/FilestubeCom.py | 4 +++- module/plugins/crypter/FiletramCom.py | 4 +++- module/plugins/crypter/FiredriveComFolder.py | 5 ++++- module/plugins/crypter/FourChanOrg.py | 11 ++++++++--- module/plugins/crypter/FreakhareComFolder.py | 5 ++++- module/plugins/crypter/FreetexthostCom.py | 5 ++++- module/plugins/crypter/FshareVnFolder.py | 4 +++- module/plugins/crypter/GooGl.py | 5 ++++- module/plugins/crypter/HoerbuchIn.py | 5 ++++- module/plugins/crypter/HotfileFolderCom.py | 5 ++++- module/plugins/crypter/ILoadTo.py | 4 +++- module/plugins/crypter/ImgurComAlbum.py | 7 +++++-- module/plugins/crypter/LetitbitNetFolder.py | 5 ++++- module/plugins/crypter/LinkSaveIn.py | 5 ++++- module/plugins/crypter/LinkdecrypterCom.py | 6 +++++- module/plugins/crypter/LixIn.py | 5 ++++- module/plugins/crypter/LofCc.py | 4 +++- module/plugins/crypter/MBLinkInfo.py | 4 +++- module/plugins/crypter/MediafireComFolder.py | 4 +++- module/plugins/crypter/Movie2kTo.py | 4 +++- module/plugins/crypter/MultiUpOrg.py | 5 ++++- module/plugins/crypter/MultiloadCz.py | 7 +++++-- module/plugins/crypter/MultiuploadCom.py | 7 +++++-- module/plugins/crypter/NCryptIn.py | 15 +++++++++------ module/plugins/crypter/NetfolderIn.py | 5 ++++- module/plugins/crypter/NosvideoCom.py | 4 +++- module/plugins/crypter/OneKhDe.py | 5 ++++- module/plugins/crypter/OronComFolder.py | 4 +++- module/plugins/crypter/PastebinCom.py | 4 +++- module/plugins/crypter/QuickshareCzFolder.py | 5 ++++- module/plugins/crypter/RSLayerCom.py | 4 +++- module/plugins/crypter/RelinkUs.py | 4 +++- module/plugins/crypter/SafelinkingNet.py | 9 ++++++--- module/plugins/crypter/SecuredIn.py | 4 +++- module/plugins/crypter/SerienjunkiesOrg.py | 11 ++++++++--- module/plugins/crypter/ShareLinksBiz.py | 5 ++++- module/plugins/crypter/ShareRapidComFolder.py | 4 +++- module/plugins/crypter/SpeedLoadOrgFolder.py | 4 +++- module/plugins/crypter/StealthTo.py | 5 ++++- module/plugins/crypter/TnyCz.py | 5 ++++- module/plugins/crypter/TrailerzoneInfo.py | 4 +++- module/plugins/crypter/TurbobitNetFolder.py | 5 ++++- module/plugins/crypter/TusfilesNetFolder.py | 5 ++++- module/plugins/crypter/UlozToFolder.py | 5 ++++- module/plugins/crypter/UploadedToFolder.py | 5 ++++- module/plugins/crypter/WiiReloadedOrg.py | 4 +++- module/plugins/crypter/XupPl.py | 5 ++++- module/plugins/crypter/YoutubeBatch.py | 10 +++++++--- 71 files changed, 282 insertions(+), 89 deletions(-) (limited to 'module/plugins/crypter') 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'info' #NEXT_PAGE_PATTERN = r'' + 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/)?(?Pplaylist|user)/)?(?P[\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"\1" TITLE_PATTERN = ur'(?P<title>.+) Let\xf6lt\xe9se' + 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(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\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'(.*)' + 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\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'
]*>\s*' + 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'

(?P.+) - <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>.+) - .+' + def getLinks(self): m = re.search(r'', 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\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'> (?P.+?)</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="/([^"]+)"> </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>[^<]+)' + 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 . """ -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/(?Puser|playlist|view_play_list)(/|.*?[?&](?:list|p)=)(?P[\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) -- cgit v1.2.3