summaryrefslogtreecommitdiffstats
path: root/module/plugins/internal/AdYouLike.py
diff options
context:
space:
mode:
authorGravatar Walter Purcaro <vuolter@users.noreply.github.com> 2015-07-23 23:44:45 +0200
committerGravatar Walter Purcaro <vuolter@users.noreply.github.com> 2015-07-23 23:44:45 +0200
commit6af9b38a8d5d49355b85aef6ddd003605d6bba05 (patch)
treecbfb5b2212cab406ba75b3acd553879311e9153f /module/plugins/internal/AdYouLike.py
parentCode cosmetics (diff)
downloadpyload-6af9b38a8d5d49355b85aef6ddd003605d6bba05.tar.xz
Improve Captcha
Diffstat (limited to 'module/plugins/internal/AdYouLike.py')
-rw-r--r--module/plugins/internal/AdYouLike.py92
1 files changed, 0 insertions, 92 deletions
diff --git a/module/plugins/internal/AdYouLike.py b/module/plugins/internal/AdYouLike.py
deleted file mode 100644
index d14babb51..000000000
--- a/module/plugins/internal/AdYouLike.py
+++ /dev/null
@@ -1,92 +0,0 @@
-# -*- coding: utf-8 -*-
-
-import re
-
-from module.common.json_layer import json_loads
-from module.plugins.internal.CaptchaService import CaptchaService
-
-
-class AdYouLike(CaptchaService):
- __name__ = "AdYouLike"
- __type__ = "captcha"
- __version__ = "0.07"
- __status__ = "stable"
-
- __description__ = """AdYouLike captcha service plugin"""
- __license__ = "GPLv3"
- __authors__ = [("Walter Purcaro", "vuolter@gmail.com")]
-
-
- AYL_PATTERN = r'Adyoulike\.create\s*\((.+?)\)'
- CALLBACK_PATTERN = r'(Adyoulike\.g\._jsonp_\d+)'
-
-
- def detect_key(self, data=None):
- html = data or self.retrieve_data()
-
- m = re.search(self.AYL_PATTERN, html)
- n = re.search(self.CALLBACK_PATTERN, html)
- if m and n:
- self.key = (m.group(1).strip(), n.group(1).strip())
- self.log_debug("Ayl: %s | Callback: %s" % self.key)
- return self.key #: Key is the tuple(ayl, callback)
- else:
- self.log_warning(_("Ayl or callback pattern not found"))
- return None
-
-
- def challenge(self, key=None, data=None):
- ayl, callback = key or self.retrieve_key(data)
-
- #: {'adyoulike':{'key':"P~zQ~O0zV0WTiAzC-iw0navWQpCLoYEP"},
- #: 'all':{'element_id':"ayl_private_cap_92300",'lang':"fr",'env':"prod"}}
- ayl = json_loads(ayl)
-
- html = self.plugin.load("http://api-ayl.appspot.com/challenge",
- get={'key' : ayl['adyoulike']['key'],
- 'env' : ayl['all']['env'],
- 'callback': callback})
- try:
- challenge = json_loads(re.search(callback + r'\s*\((.+?)\)', html).group(1))
-
- except AttributeError:
- self.fail(_("AdYouLike challenge pattern not found"))
-
- self.log_debug("Challenge: %s" % challenge)
-
- return self.result(ayl, challenge), challenge
-
-
- def result(self, server, challenge):
- #: Adyoulike.g._jsonp_5579316662423138
- #: ({'translations':{'fr':{'instructions_visual':"Recopiez « Soonnight » ci-dessous :"}},
- #: 'site_under':true,'clickable':true,'pixels':{'VIDEO_050':[],'DISPLAY':[],'VIDEO_000':[],'VIDEO_100':[],
- #: 'VIDEO_025':[],'VIDEO_075':[]},'medium_type':"image/adyoulike",
- #: 'iframes':{'big':"<iframe src=\"http://www.soonnight.com/campagn.html\" scrolling=\"no\"
- #: height=\"250\" width=\"300\" frameborder=\"0\"></iframe>"},'shares':{},'id':256,
- #: 'token':"e6QuI4aRSnbIZJg02IsV6cp4JQ9~MjA1",'formats':{'small':{'y':300,'x':0,'w':300,'h':60},
- #: 'big':{'y':0,'x':0,'w':300,'h':250},'hover':{'y':440,'x':0,'w':300,'h':60}},
- #: 'tid':"SqwuAdxT1EZoi4B5q0T63LN2AkiCJBg5"})
-
- if isinstance(server, basestring):
- server = json_loads(server)
-
- if isinstance(challenge, basestring):
- challenge = json_loads(challenge)
-
- try:
- instructions_visual = challenge['translations'][server['all']['lang']]['instructions_visual']
- result = re.search(u'«(.+?)»', instructions_visual).group(1).strip()
-
- except AttributeError:
- self.fail(_("AdYouLike result not found"))
-
- result = {'_ayl_captcha_engine' : "adyoulike",
- '_ayl_env' : server['all']['env'],
- '_ayl_tid' : challenge['tid'],
- '_ayl_token_challenge': challenge['token'],
- '_ayl_response' : response}
-
- self.log_debug("Result: %s" % result)
-
- return result