diff options
| author | 2015-05-30 03:55:01 +0200 | |
|---|---|---|
| committer | 2015-05-30 03:55:01 +0200 | |
| commit | 10ed9dbcee2c996dd348db4ad57d824c9d454005 (patch) | |
| tree | dea6aacb9e2cab930bc6d21c8456fd56e9d3fa1d /module/plugins/crypter | |
| parent | Update plugins after splitting CaptchaService (diff) | |
| download | pyload-10ed9dbcee2c996dd348db4ad57d824c9d454005.tar.xz | |
[Dereferer][SimpleDereferer] Update
Diffstat (limited to 'module/plugins/crypter')
| -rw-r--r-- | module/plugins/crypter/Dereferer.py | 33 | 
1 files changed, 30 insertions, 3 deletions
diff --git a/module/plugins/crypter/Dereferer.py b/module/plugins/crypter/Dereferer.py index 8427c1540..8e56a7bfc 100644 --- a/module/plugins/crypter/Dereferer.py +++ b/module/plugins/crypter/Dereferer.py @@ -6,12 +6,39 @@ from module.plugins.internal.SimpleDereferer import SimpleDereferer  class Dereferer(SimpleDereferer):      __name__    = "Dereferer"      __type__    = "crypter" -    __version__ = "0.11" +    __version__ = "0.12" -    __pattern__ = r'https?://([^/]+)/.*?(?P<LINK>(ht|f)tps?(://|%3A%2F%2F).+)' +    __pattern__ = r'https?://(?:www\.)?(?:\w+\.)*?(?P<DOMAIN>(?:[\d.]+|[\w\-]{3,}(?:\.[a-zA-Z]{2,}){1,2})(?:\:\d+)?)/.*?(?P<LINK>(?:ht|f)tps?://.+)'      __config__  = [("use_subfolder"     , "bool", "Save package to subfolder"          , True),                     ("subfolder_per_pack", "bool", "Create a subfolder for each package", True)]      __description__ = """Crypter for dereferers"""      __license__     = "GPLv3" -    __authors__     = [("zoidberg", "zoidberg@mujmail.cz")] +    __authors__     = [("Walter Purcaro", "vuolter@gmail.com")] + + +    HOSTER_DOMAIN = None +    HOSTER_NAME   = None + + +    def _log(self, type, args): +        msg = " | ".join(str(a).strip() for a in args if a) +        logger = getattr(self.log, type) +        logger("%s: %s: %s" % (self.__name__, self.HOSTER_NAME, msg or _("%s MARK" % type.upper()))) + + +    def init(self): +        super(Dereferer, self).init() + +        self.__pattern__ = self.core.pluginManager.crypterPlugins[self.__name__]['pattern']  #@TODO: Recheck in 0.4.10 + +        self.HOSTER_DOMAIN = re.match(self.__pattern__, self.pyfile.url).group("DOMAIN").lower() +        self.HOSTER_NAME   = "".join(part.capitalize() for part in re.split(r'(\.|\d+)', self.HOSTER_DOMAIN) if part != '.') + + +    def getLink(self): +        try: +            return re.match(self.__pattern__, pyfile.url).group('LINK').strip() + +        except Exception, e: +            self.logWarning(e)  | 
