diff options
Diffstat (limited to 'module/plugins')
| -rw-r--r-- | module/plugins/accounts/FilebeerInfo.py | 57 | ||||
| -rw-r--r-- | module/plugins/accounts/SpeedLoadOrg.py | 13 | ||||
| -rw-r--r-- | module/plugins/crypter/FilebeerInfoFolder.py | 28 | ||||
| -rw-r--r-- | module/plugins/crypter/SpeedLoadOrgFolder.py | 9 | ||||
| -rw-r--r-- | module/plugins/hoster/SpeedLoadOrg.py | 14 | ||||
| -rw-r--r-- | module/plugins/internal/DeadCrypter.py | 14 | 
6 files changed, 23 insertions, 112 deletions
| diff --git a/module/plugins/accounts/FilebeerInfo.py b/module/plugins/accounts/FilebeerInfo.py deleted file mode 100644 index 3c3a9edfd..000000000 --- a/module/plugins/accounts/FilebeerInfo.py +++ /dev/null @@ -1,57 +0,0 @@ -# -*- coding: utf-8 -*- - -""" -    This program is free software; you can redistribute it and/or modify -    it under the terms of the GNU General Public License as published by -    the Free Software Foundation; either version 3 of the License, -    or (at your option) any later version. - -    This program is distributed in the hope that it will be useful, -    but WITHOUT ANY WARRANTY; without even the implied warranty of -    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -    See the GNU General Public License for more details. - -    You should have received a copy of the GNU General Public License -    along with this program; if not, see <http://www.gnu.org/licenses/>. -     -    @author: zoidberg -""" - -import re -from time import mktime, strptime -from module.plugins.Account import Account - - -class FilebeerInfo(Account): -    __name__ = "FilebeerInfo" -    __version__ = "0.02" -    __type__ = "account" -    __description__ = """filebeer.info account plugin""" -    __author_name__ = ("zoidberg") -    __author_mail__ = ("zoidberg@mujmail.cz") - -    VALID_UNTIL_PATTERN = r'Reverts To Free Account:\s</td>\s*<td>\s*(.*?)\s*</td>' - -    def loadAccountInfo(self, user, req): -        html = req.load("http://filebeer.info/upgrade.php", decode=True) -        premium = not 'Free User </td>' in html - -        validuntil = None -        if premium: -            try: -                validuntil = mktime(strptime(re.search(self.VALID_UNTIL_PATTERN, html).group(1), "%d/%m/%Y %H:%M:%S")) -            except Exception, e: -                self.logError("Unable to parse account info", e) - -        return {"validuntil": validuntil, "trafficleft": -1, "premium": premium} - -    def login(self, user, data, req): -        html = req.load('http://filebeer.info/login.php', post={ -            "submit": 'Login', -            "loginPassword": data['password'], -            "loginUsername": user, -            "submitme": '1' -        }, decode=True) - -        if "<ul class='pageErrors'>" in html or ">Your username and password are invalid<" in html: -            self.wrongPassword() diff --git a/module/plugins/accounts/SpeedLoadOrg.py b/module/plugins/accounts/SpeedLoadOrg.py deleted file mode 100644 index bb9fb05fb..000000000 --- a/module/plugins/accounts/SpeedLoadOrg.py +++ /dev/null @@ -1,13 +0,0 @@ -# -*- coding: utf-8 -*- -from module.plugins.internal.XFSPAccount import XFSPAccount - - -class SpeedLoadOrg(XFSPAccount): -    __name__ = "SpeedLoadOrg" -    __version__ = "0.01" -    __type__ = "account" -    __description__ = """SpeedLoadOrg account plugin""" -    __author_name__ = ("stickell") -    __author_mail__ = ("l.stickell@yahoo.it") - -    MAIN_PAGE = "http://speedload.org/" diff --git a/module/plugins/crypter/FilebeerInfoFolder.py b/module/plugins/crypter/FilebeerInfoFolder.py index 86ce5b697..b6bf4fd07 100644 --- a/module/plugins/crypter/FilebeerInfoFolder.py +++ b/module/plugins/crypter/FilebeerInfoFolder.py @@ -1,36 +1,14 @@  # -*- coding: utf-8 -*- -import re -from module.plugins.Crypter import Crypter +from module.plugins.internal.DeadCrypter import DeadCrypter -class FilebeerInfoFolder(Crypter): +class FilebeerInfoFolder(DeadCrypter):      __name__ = "FilebeerInfoFolder"      __type__ = "crypter"      __pattern__ = r"http://(?:www\.)?filebeer\.info/(\d+~f).*" -    __version__ = "0.01" +    __version__ = "0.02"      __description__ = """Filebeer.info Folder Plugin"""      __author_name__ = ("zoidberg")      __author_mail__ = ("zoidberg@mujmail.cz") -    LINK_PATTERN = r'<td title="[^"]*"><a href="([^"]+)" target="_blank">' -    PAGE_COUNT_PATTERN = r'<p class="introText">\s*Total Pages (\d+)' - -    def decrypt(self, pyfile): -        pyfile.url = re.sub(self.__pattern__, r'http://filebeer.info/\1?page=1', pyfile.url) -        html = self.load(pyfile.url) - -        page_count = int(re.search(self.PAGE_COUNT_PATTERN, html).group(1)) -        new_links = [] - -        for i in range(1, page_count + 1): -            self.logInfo("Fetching links from page %i" % i) -            new_links.extend(re.findall(self.LINK_PATTERN, html)) - -            if i < page_count: -                html = self.load("%s?page=%d" % (pyfile.url, i + 1)) - -        if new_links: -            self.core.files.addLinks(new_links, self.pyfile.package().id) -        else: -            self.fail('Could not extract any links') diff --git a/module/plugins/crypter/SpeedLoadOrgFolder.py b/module/plugins/crypter/SpeedLoadOrgFolder.py index 8223eb7b9..7472e28fe 100644 --- a/module/plugins/crypter/SpeedLoadOrgFolder.py +++ b/module/plugins/crypter/SpeedLoadOrgFolder.py @@ -15,17 +15,14 @@  # along with this program.  If not, see <http://www.gnu.org/licenses/>.    #  ############################################################################ -from module.plugins.internal.SimpleCrypter import SimpleCrypter +from module.plugins.internal.DeadCrypter import DeadCrypter -class SpeedLoadOrgFolder(SimpleCrypter): +class SpeedLoadOrgFolder(DeadCrypter):      __name__ = "SpeedLoadOrgFolder"      __type__ = "crypter"      __pattern__ = r"http://(www\.)?speedload\.org/(\d+~f$|folder/\d+/)" -    __version__ = "0.2" +    __version__ = "0.3"      __description__ = """Speedload Crypter Plugin"""      __author_name__ = ("stickell")      __author_mail__ = ("l.stickell@yahoo.it") - -    LINK_PATTERN = r'<div class="link"><a href="(http://speedload.org/\w+)"' -    TITLE_PATTERN = r'<title>Files of: (?P<title>[^<]+) folder</title>' diff --git a/module/plugins/hoster/SpeedLoadOrg.py b/module/plugins/hoster/SpeedLoadOrg.py index 17354864f..5687fae85 100644 --- a/module/plugins/hoster/SpeedLoadOrg.py +++ b/module/plugins/hoster/SpeedLoadOrg.py @@ -1,23 +1,15 @@  # -*- coding: utf-8 -*- -from module.plugins.hoster.XFileSharingPro import XFileSharingPro, create_getInfo +from module.plugins.internal.DeadHoster import DeadHoster, create_getInfo -class SpeedLoadOrg(XFileSharingPro): +class SpeedLoadOrg(DeadHoster):      __name__ = "SpeedLoadOrg"      __type__ = "hoster"      __pattern__ = r"http://(www\.)?speedload\.org/(?P<ID>\w+)" -    __version__ = "1.01" +    __version__ = "1.02"      __description__ = """Speedload.org hoster plugin"""      __author_name__ = ("stickell")      __author_mail__ = ("l.stickell@yahoo.it") -    FILE_NAME_PATTERN = r'Filename:</b></td><td nowrap>(?P<N>[^<]+)</td></tr>' -    FILE_SIZE_PATTERN = r'Size:</b></td><td>[\w. ]+<small>\((?P<S>\d+) bytes\)</small>' - -    HOSTER_NAME = "speedload.org" - -    def handlePremium(self): -        self.download(self.pyfile.url, post=self.getPostParameters()) -  getInfo = create_getInfo(SpeedLoadOrg) diff --git a/module/plugins/internal/DeadCrypter.py b/module/plugins/internal/DeadCrypter.py new file mode 100644 index 000000000..805f781af --- /dev/null +++ b/module/plugins/internal/DeadCrypter.py @@ -0,0 +1,14 @@ +from module.plugins.Crypter import Crypter as _Crypter + + +class DeadCrypter(_Crypter): +    __name__ = "DeadCrypter" +    __type__ = "crypter" +    __pattern__ = r"" +    __version__ = "0.01" +    __description__ = """Crypter is no longer available""" +    __author_name__ = ("stickell") +    __author_mail__ = ("l.stickell@yahoo.it") +     +    def setup(self): +        self.fail("Crypter is no longer available") | 
