summaryrefslogtreecommitdiffstats
path: root/module/plugins/crypter/Dereferer.py
diff options
context:
space:
mode:
authorGravatar Walter Purcaro <vuolter@users.noreply.github.com> 2015-05-30 03:55:01 +0200
committerGravatar Walter Purcaro <vuolter@users.noreply.github.com> 2015-05-30 03:55:01 +0200
commit10ed9dbcee2c996dd348db4ad57d824c9d454005 (patch)
treedea6aacb9e2cab930bc6d21c8456fd56e9d3fa1d /module/plugins/crypter/Dereferer.py
parentUpdate plugins after splitting CaptchaService (diff)
downloadpyload-10ed9dbcee2c996dd348db4ad57d824c9d454005.tar.xz
[Dereferer][SimpleDereferer] Update
Diffstat (limited to 'module/plugins/crypter/Dereferer.py')
-rw-r--r--module/plugins/crypter/Dereferer.py33
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)