summaryrefslogtreecommitdiffstats
path: root/core/module/plugins/ReCaptcha.py
diff options
context:
space:
mode:
authorGravatar mkaay <mkaay@mkaay.de> 2010-08-25 16:48:55 +0200
committerGravatar mkaay <mkaay@mkaay.de> 2010-08-25 16:48:55 +0200
commit3c9f55270a83b0e88ec0dc516f9d9921e4d7b6ea (patch)
treec5b2b1bfeb7eb8df2b97be118f6cbcec4e29cb3b /core/module/plugins/ReCaptcha.py
parentul.to fetching, so.biz expire (diff)
downloadpyload-3c9f55270a83b0e88ec0dc516f9d9921e4d7b6ea.tar.xz
merged gui
Diffstat (limited to 'core/module/plugins/ReCaptcha.py')
-rw-r--r--core/module/plugins/ReCaptcha.py17
1 files changed, 17 insertions, 0 deletions
diff --git a/core/module/plugins/ReCaptcha.py b/core/module/plugins/ReCaptcha.py
new file mode 100644
index 000000000..d29530a64
--- /dev/null
+++ b/core/module/plugins/ReCaptcha.py
@@ -0,0 +1,17 @@
+import re
+
+class ReCaptcha():
+ def __init__(self, plugin):
+ self.plugin = plugin
+
+ def challenge(self, id):
+ js = self.plugin.req.load("http://api.recaptcha.net/challenge", get={"k":id}, cookies=True)
+
+ try:
+ challenge = re.search("challenge : '(.*?)',", js).group(1)
+ server = re.search("server : '(.*?)',", js).group(1)
+ except:
+ self.plugin.fail("recaptcha error")
+ result = self.plugin.decryptCaptcha("%simage"%server, get={"c":challenge}, cookies=True)
+
+ return challenge, result