summaryrefslogtreecommitdiffstats
path: root/pyload/plugins/addons/ExpertDecoders.py
diff options
context:
space:
mode:
Diffstat (limited to 'pyload/plugins/addons/ExpertDecoders.py')
-rw-r--r--pyload/plugins/addons/ExpertDecoders.py46
1 files changed, 20 insertions, 26 deletions
diff --git a/pyload/plugins/addons/ExpertDecoders.py b/pyload/plugins/addons/ExpertDecoders.py
index 2e66e49ca..f1b7ea352 100644
--- a/pyload/plugins/addons/ExpertDecoders.py
+++ b/pyload/plugins/addons/ExpertDecoders.py
@@ -18,7 +18,7 @@
from __future__ import with_statement
from thread import start_new_thread
-from pycurl import FORM_FILE, LOW_SPEED_TIME
+from pycurl import LOW_SPEED_TIME
from uuid import uuid4
from base64 import b64encode
@@ -27,13 +27,14 @@ from module.network.HTTPRequest import BadHeader
from module.plugins.Hook import Hook
+
class ExpertDecoders(Hook):
__name__ = "ExpertDecoders"
__version__ = "0.01"
__description__ = """send captchas to expertdecoders.com"""
__config__ = [("activated", "bool", "Activated", False),
("force", "bool", "Force CT even if client is connected", False),
- ("passkey", "password", "Access key", ""),]
+ ("passkey", "password", "Access key", ""), ]
__author_name__ = ("RaNaN", "zoidberg")
__author_mail__ = ("RaNaN@pyload.org", "zoidberg@mujmail.cz")
@@ -42,37 +43,33 @@ class ExpertDecoders(Hook):
def setup(self):
self.info = {}
- def getCredits(self):
- response = getURL(self.API_URL, post = { "key": self.getConfig("passkey"), "action": "balance" })
-
- if response.isdigit():
+ def getCredits(self):
+ response = getURL(self.API_URL, post={"key": self.getConfig("passkey"), "action": "balance"})
+
+ if response.isdigit():
self.logInfo(_("%s credits left") % response)
self.info["credits"] = credits = int(response)
- return credits
+ return credits
else:
self.logError(response)
return 0
-
- def processCaptcha(self, task):
+
+ def processCaptcha(self, task):
task.data["ticket"] = ticket = uuid4()
result = None
-
+
with open(task.captchaFile, 'rb') as f:
- data = f.read()
- data = b64encode(data)
+ data = f.read()
+ data = b64encode(data)
#self.logDebug("%s: %s : %s" % (ticket, task.captchaFile, data))
req = getRequest()
#raise timeout threshold
req.c.setopt(LOW_SPEED_TIME, 80)
-
+
try:
- result = req.load(self.API_URL,
- post={ "action": "upload",
- "key": self.getConfig("passkey"),
- "file": data,
- "gen_task_id": ticket }
- )
+ result = req.load(self.API_URL, post={"action": "upload", "key": self.getConfig("passkey"),
+ "file": data, "gen_task_id": ticket})
finally:
req.close()
@@ -99,14 +96,11 @@ class ExpertDecoders(Hook):
def captchaInvalid(self, task):
if "ticket" in task.data:
-
+
try:
- response = getURL(self.API_URL,
- post={ "action": "refund",
- "key": self.getConfig("passkey"),
- "gen_task_id": task.data["ticket"] }
- )
+ response = getURL(self.API_URL, post={"action": "refund", "key": self.getConfig("passkey"),
+ "gen_task_id": task.data["ticket"]})
self.logInfo("Request refund: %s" % response)
except BadHeader, e:
- self.logError("Could not send refund request.", str(e)) \ No newline at end of file
+ self.logError("Could not send refund request.", str(e))