summaryrefslogtreecommitdiffstats
path: root/module/plugins/crypter
diff options
context:
space:
mode:
Diffstat (limited to 'module/plugins/crypter')
-rw-r--r--module/plugins/crypter/CloudzillaToFolder.py2
-rw-r--r--module/plugins/crypter/Dereferer.py2
-rw-r--r--module/plugins/crypter/DlProtectCom.py2
-rw-r--r--module/plugins/crypter/EmbeduploadCom.py2
-rw-r--r--module/plugins/crypter/FilecryptCc.py11
-rw-r--r--module/plugins/crypter/FreakhareComFolder.py2
-rw-r--r--module/plugins/crypter/LinkCryptWs.py11
-rw-r--r--module/plugins/crypter/LinkdecrypterCom.py4
-rw-r--r--module/plugins/crypter/LixIn.py17
-rw-r--r--module/plugins/crypter/MediafireComFolder.py4
-rw-r--r--module/plugins/crypter/MultiloadCz.py4
-rw-r--r--module/plugins/crypter/NCryptIn.py10
-rw-r--r--module/plugins/crypter/RelinkUs.py13
-rw-r--r--module/plugins/crypter/SafelinkingNet.py35
-rw-r--r--module/plugins/crypter/ShareLinksBiz.py24
-rw-r--r--module/plugins/crypter/UlozToFolder.py2
16 files changed, 70 insertions, 75 deletions
diff --git a/module/plugins/crypter/CloudzillaToFolder.py b/module/plugins/crypter/CloudzillaToFolder.py
index 6c8ce5917..dc0cdfef2 100644
--- a/module/plugins/crypter/CloudzillaToFolder.py
+++ b/module/plugins/crypter/CloudzillaToFolder.py
@@ -28,7 +28,7 @@ class CloudzillaToFolder(SimpleHoster):
def check_errors(self):
m = re.search(self.PASSWORD_PATTERN, self.html)
- if m:
+ if m is not None:
self.html = self.load(self.pyfile.url, get={'key': self.get_password()})
if re.search(self.PASSWORD_PATTERN, self.html):
diff --git a/module/plugins/crypter/Dereferer.py b/module/plugins/crypter/Dereferer.py
index d7dfe52d7..8ecc635ec 100644
--- a/module/plugins/crypter/Dereferer.py
+++ b/module/plugins/crypter/Dereferer.py
@@ -38,4 +38,4 @@ class Dereferer(SimpleCrypter):
def get_links(self):
- return [re.match(self.__pattern__, self.pyfile.url).group('LINK').strip()]
+ return [re.match(self.__pattern__, self.pyfile.url).group('LINK')]
diff --git a/module/plugins/crypter/DlProtectCom.py b/module/plugins/crypter/DlProtectCom.py
index 0c776ac61..ac45ee4c3 100644
--- a/module/plugins/crypter/DlProtectCom.py
+++ b/module/plugins/crypter/DlProtectCom.py
@@ -53,7 +53,7 @@ class DlProtectCom(SimpleCrypter):
if "Security Code" in self.html:
m = re.search(r'/captcha\.php\?key=(.+?)"', self.html)
- if m:
+ if m is not None:
captcha_code = self.captcha.decrypt("http://www.dl-protect.com/captcha.php?key=" + m.group(1), input_type="gif")
post_req['secure'] = captcha_code
diff --git a/module/plugins/crypter/EmbeduploadCom.py b/module/plugins/crypter/EmbeduploadCom.py
index 341b3e315..e4a9387ae 100644
--- a/module/plugins/crypter/EmbeduploadCom.py
+++ b/module/plugins/crypter/EmbeduploadCom.py
@@ -30,7 +30,7 @@ class EmbeduploadCom(Crypter):
tmp_links = []
m = re.findall(self.LINK_PATTERN, self.html)
- if m:
+ if m is not None:
prefered_set = set(self.get_config('preferedHoster').split('|'))
prefered_set = map(lambda s: s.lower().split('.')[0], prefered_set)
diff --git a/module/plugins/crypter/FilecryptCc.py b/module/plugins/crypter/FilecryptCc.py
index fcabd5ebf..bb9aee1d7 100644
--- a/module/plugins/crypter/FilecryptCc.py
+++ b/module/plugins/crypter/FilecryptCc.py
@@ -24,8 +24,8 @@ class FilecryptCc(Crypter):
__description__ = """Filecrypt.cc decrypter plugin"""
__license__ = "GPLv3"
- __authors__ = [("zapp-brannigan", "" ),
- ("GammaC0de" , None)]
+ __authors__ = [("zapp-brannigan", "fuerst.reinje@web.de"),
+ ("GammaC0de" , None )]
# URL_REPLACEMENTS = [(r'.html$', ""), (r'$', ".html")] #@TODO: Extend SimpleCrypter
@@ -138,9 +138,9 @@ class FilecryptCc(Crypter):
if captcha_key:
try:
response, challenge = recaptcha.challenge(captcha_key)
+
except Exception:
- self.captcha.invalid()
- self.retry()
+ self.retry_captcha()
self.site_with_links = self.load(self.pyfile.url,
post={'g-recaptcha-response': response})
@@ -149,8 +149,7 @@ class FilecryptCc(Crypter):
self.retry()
if re.search(self.CAPTCHA_PATTERN, self.site_with_links):
- self.captcha.invalid()
- self.retry()
+ self.retry_captcha()
else:
self.log_info(_("No captcha found"))
diff --git a/module/plugins/crypter/FreakhareComFolder.py b/module/plugins/crypter/FreakhareComFolder.py
index f7f1946f4..e939fe467 100644
--- a/module/plugins/crypter/FreakhareComFolder.py
+++ b/module/plugins/crypter/FreakhareComFolder.py
@@ -29,7 +29,7 @@ class FreakhareComFolder(SimpleCrypter):
def load_page(self, page_n):
if not hasattr(self, 'f_id') and not hasattr(self, 'f_md5'):
m = re.search(r'http://freakshare.com/\?x=folder&f_id=(\d+)&f_md5=(\w+)', self.html)
- if m:
+ if m is not None:
self.f_id = m.group(1)
self.f_md5 = m.group(2)
return self.load('http://freakshare.com/', get={'x': 'folder',
diff --git a/module/plugins/crypter/LinkCryptWs.py b/module/plugins/crypter/LinkCryptWs.py
index 0d8590860..d61c9d3dd 100644
--- a/module/plugins/crypter/LinkCryptWs.py
+++ b/module/plugins/crypter/LinkCryptWs.py
@@ -160,13 +160,12 @@ class LinkCryptWs(Crypter):
def handle_errors(self):
if self.is_password_protected():
- self.fail(_("Incorrect password"))
+ self.fail(_("Wrong password"))
def handle_captcha_errors(self):
- if "Your choice was wrong!" in self.html:
- self.captcha.invalid()
- self.retry()
+ if "Your choice was wrong" in self.html:
+ self.retry_captcha()
else:
self.captcha.correct()
@@ -244,7 +243,7 @@ class LinkCryptWs(Crypter):
if not clink:
continue
- self.log_debug("clink avaible")
+ self.log_debug("clink found")
package_name, folder_name = self.get_package_info()
self.log_debug("Added package with name %s.%s and container link %s" %( package_name, type, clink.group(1)))
@@ -266,7 +265,7 @@ class LinkCryptWs(Crypter):
break
if cnl_line:
- self.log_debug("cnl_line gefunden")
+ self.log_debug("cnl_line found")
try:
cnl_section = self.handle_javascript(cnl_line)
diff --git a/module/plugins/crypter/LinkdecrypterCom.py b/module/plugins/crypter/LinkdecrypterCom.py
index 0f0c3e7a9..c16ec0b6e 100644
--- a/module/plugins/crypter/LinkdecrypterCom.py
+++ b/module/plugins/crypter/LinkdecrypterCom.py
@@ -39,11 +39,11 @@ class LinkdecrypterCom(MultiCrypter):
while retries:
m = re.search(self.TEXTAREA_PATTERN, self.html, re.S)
- if m:
+ if m is not None:
self.urls = [x for x in m.group(1).splitlines() if '[LINK-ERROR]' not in x]
m = re.search(self.CAPTCHA_PATTERN, self.html)
- if m:
+ if m is not None:
captcha_url = 'http://linkdecrypter.com/' + m.group(1)
result_type = "positional" if "getPos" in m.group(2) else "textual"
diff --git a/module/plugins/crypter/LixIn.py b/module/plugins/crypter/LixIn.py
index 2d26564e8..ecc92a8d3 100644
--- a/module/plugins/crypter/LixIn.py
+++ b/module/plugins/crypter/LixIn.py
@@ -43,16 +43,13 @@ class LixIn(Crypter):
self.error(_("Link doesn't seem valid"))
m = re.search(self.CAPTCHA_PATTERN, self.html)
- if m:
- for _i in xrange(5):
- m = re.search(self.CAPTCHA_PATTERN, self.html)
- if m:
- self.log_debug("Trying captcha")
- captcharesult = self.captcha.decrypt(urlparse.urljoin("http://lix.in/", m.group(1)))
- self.html = self.load(url,
- post={'capt': captcharesult, 'submit': "submit", 'tiny': id})
- else:
- self.log_debug("No captcha/captcha solved")
+ if m is not None:
+ captcharesult = self.captcha.decrypt(urlparse.urljoin("http://lix.in/", m.group(1)))
+ self.html = self.load(url, post={'capt': captcharesult, 'submit': "submit", 'tiny': id})
+
+ if re.search(self.CAPTCHA_PATTERN, self.html):
+ self.fail(_("No captcha solved"))
+
else:
self.html = self.load(url, post={'submit': "submit", 'tiny': id})
diff --git a/module/plugins/crypter/MediafireComFolder.py b/module/plugins/crypter/MediafireComFolder.py
index 81d880725..f90bc04ea 100644
--- a/module/plugins/crypter/MediafireComFolder.py
+++ b/module/plugins/crypter/MediafireComFolder.py
@@ -33,13 +33,13 @@ class MediafireComFolder(Crypter):
#: Load and parse html
html = self.load(pyfile.url)
m = re.search(self.LINK_PATTERN, html)
- if m:
+ if m is not None:
#: File page
self.urls.append("http://www.mediafire.com/file/%s" % m.group(1))
else:
#: Folder page
m = re.search(self.FOLDER_KEY_PATTERN, html)
- if m:
+ if m is not None:
folder_key = m.group(1)
self.log_debug("FOLDER KEY: %s" % folder_key)
diff --git a/module/plugins/crypter/MultiloadCz.py b/module/plugins/crypter/MultiloadCz.py
index d9b6236be..72e9b3a8b 100644
--- a/module/plugins/crypter/MultiloadCz.py
+++ b/module/plugins/crypter/MultiloadCz.py
@@ -30,11 +30,11 @@ class MultiloadCz(Crypter):
if re.match(self.__pattern__, pyfile.url).group(1) == "slozka":
m = re.search(self.FOLDER_PATTERN, self.html)
- if m:
+ if m is not None:
self.urls.extend(m.group(1).split())
else:
m = re.findall(self.LINK_PATTERN, self.html)
- if m:
+ if m is not None:
prefered_set = set(self.get_config('usedHoster').split('|'))
self.urls.extend(x[1] for x in m if x[0] in prefered_set)
diff --git a/module/plugins/crypter/NCryptIn.py b/module/plugins/crypter/NCryptIn.py
index 32c9283f7..dddffbbf2 100644
--- a/module/plugins/crypter/NCryptIn.py
+++ b/module/plugins/crypter/NCryptIn.py
@@ -121,7 +121,7 @@ class NCryptIn(Crypter):
def get_package_info(self):
m = re.search(self.NAME_PATTERN, self.html)
- if m:
+ if m is not None:
name = folder = m.group('N').strip()
self.log_debug("Found name [%s] and folder [%s] in package info" % (name, folder))
else:
@@ -177,13 +177,11 @@ class NCryptIn(Crypter):
def handle_errors(self):
if self.protection_type == "password":
if "This password is invalid!" in self.cleaned_html:
- self.log_debug("Incorrect password, please set right password on 'Edit package' form and retry")
- self.fail(_("Incorrect password, please set right password on 'Edit package' form and retry"))
+ self.fail(_("Wrong password"))
if self.protection_type == "captcha":
- if "The securitycheck was wrong!" in self.cleaned_html:
- self.captcha.invalid()
- self.retry()
+ if "The securitycheck was wrong" in self.cleaned_html:
+ self.retry_captcha()
else:
self.captcha.correct()
diff --git a/module/plugins/crypter/RelinkUs.py b/module/plugins/crypter/RelinkUs.py
index 641353865..6d8383fee 100644
--- a/module/plugins/crypter/RelinkUs.py
+++ b/module/plugins/crypter/RelinkUs.py
@@ -154,7 +154,7 @@ class RelinkUs(Crypter):
#: Try to get info from web
m = re.search(self.FILE_TITLE_REGEX, self.html)
- if m:
+ if m is not None:
title = m.group(1).strip()
if not self.FILE_NOTITLE in title:
name = folder = title
@@ -172,14 +172,11 @@ class RelinkUs(Crypter):
def handle_errors(self):
if self.PASSWORD_ERROR_ROKEN in self.html:
- msg = "Incorrect password, please set right password on 'Edit package' form and retry"
- self.log_debug(msg)
- self.fail(_(msg))
+ self.fail(_("Wrong password"))
if self.captcha:
if self.CAPTCHA_ERROR_ROKEN in self.html:
- self.captcha.invalid()
- self.retry()
+ self.retry_captcha()
else:
self.captcha.correct()
@@ -199,7 +196,7 @@ class RelinkUs(Crypter):
self.log_debug("Search for CNL2 links")
package_links = []
m = re.search(self.CNL2_FORM_REGEX, self.html, re.S)
- if m:
+ if m is not None:
cnl2_form = m.group(1)
try:
(vcrypted, vjk) = self._get_cipher_params(cnl2_form)
@@ -216,7 +213,7 @@ class RelinkUs(Crypter):
self.log_debug("Search for DLC links")
package_links = []
m = re.search(self.DLC_LINK_REGEX, self.html)
- if m:
+ if m is not None:
container_url = self.DLC_DOWNLOAD_URL + "?id=%s&dlc=1" % self.fileid
self.log_debug("Downloading DLC container link [%s]" % container_url)
try:
diff --git a/module/plugins/crypter/SafelinkingNet.py b/module/plugins/crypter/SafelinkingNet.py
index e2b8471ab..29e1cce4f 100644
--- a/module/plugins/crypter/SafelinkingNet.py
+++ b/module/plugins/crypter/SafelinkingNet.py
@@ -47,24 +47,25 @@ class SafelinkingNet(Crypter):
postData['link-password'] = self.get_password()
if "altcaptcha" in self.html:
- for _i in xrange(5):
- m = re.search(self.SOLVEMEDIA_PATTERN, self.html)
- if m:
- captchaKey = m.group(1)
- captcha = SolveMedia(self)
- captchaProvider = "Solvemedia"
- else:
- self.fail(_("Error parsing captcha"))
+ m = re.search(self.SOLVEMEDIA_PATTERN, self.html)
+ if m is not None:
+ captchaKey = m.group(1)
+ captcha = SolveMedia(self)
+ captchaProvider = "Solvemedia"
+ else:
+ self.fail(_("Error parsing captcha"))
+
+ response, challenge = captcha.challenge(captchaKey)
+ postData['adcopy_challenge'] = challenge
+ postData['adcopy_response'] = response
+
+ self.html = self.load(url, post=postData)
- response, challenge = captcha.challenge(captchaKey)
- postData['adcopy_challenge'] = challenge
- postData['adcopy_response'] = response
+ if "The CAPTCHA code you entered was wrong" in self.html:
+ self.retry_captcha()
- self.html = self.load(url, post=postData)
- if "The password you entered was incorrect" in self.html:
- self.fail(_("Incorrect Password"))
- if not "The CAPTCHA code you entered was wrong" in self.html:
- break
+ if "The password you entered was incorrect" in self.html:
+ self.fail(_("Wrong password"))
pyfile.package().password = ""
soup = BeautifulSoup.BeautifulSoup(self.html)
@@ -73,7 +74,7 @@ class SafelinkingNet(Crypter):
if "d_links" in s.text:
break
m = re.search('d_links":(\[.*?\])', s.text)
- if m:
+ if m is not None:
linkDict = json_loads(m.group(1))
for link in linkDict:
if not "http://" in link['full']:
diff --git a/module/plugins/crypter/ShareLinksBiz.py b/module/plugins/crypter/ShareLinksBiz.py
index 3316aea56..e372d7c6a 100644
--- a/module/plugins/crypter/ShareLinksBiz.py
+++ b/module/plugins/crypter/ShareLinksBiz.py
@@ -66,14 +66,18 @@ class ShareLinksBiz(Crypter):
def init_file(self, pyfile):
url = pyfile.url
+
if 's2l.biz' in url:
url = self.load(url, just_header=True)['location']
+
if re.match(self.__pattern__, url):
self.base_url = "http://www.%s.biz" % re.match(self.__pattern__, url).group(1)
self.file_id = re.match(self.__pattern__, url).group('ID')
+
else:
self.log_debug("Could not initialize, URL [%s] does not match pattern [%s]" % (url, self.__pattern__))
- self.fail("Unsupported download link")
+ self.fail(_("Unsupported download link"))
+
self.package = pyfile.package()
@@ -81,7 +85,8 @@ class ShareLinksBiz(Crypter):
if "No usable content was found" in self.html:
self.log_debug("File not found")
return False
- return True
+ else:
+ return True
def is_password_protected(self):
@@ -121,7 +126,8 @@ class ShareLinksBiz(Crypter):
m = re.search(r'<img src="/captcha.gif\?d=(.+?)&PHPSESSID=(.+?)&legend=1"', self.html)
if not m:
self.log_debug("Captcha url data not found, maybe plugin out of date?")
- self.fail("Captcha url data not found")
+ self.fail(_("Captcha url data not found"))
+
captchaUrl = self.base_url + '/captcha.gif?d=%s&PHPSESSID=%s' % (m.group(1), m.group(2))
self.log_debug("Waiting user for correct position")
coords = self.captcha.decrypt(captchaUrl, input_type="gif", output_type='positional')
@@ -130,8 +136,8 @@ class ShareLinksBiz(Crypter):
#: Resolve captcha
href = self._resolve_coords(coords, captchaMap)
if href is None:
- self.captcha.invalid()
- self.retry(delay=5)
+ self.retry_captcha(wait=5)
+
url = self.base_url + href
self.html = self.load(url)
@@ -155,13 +161,11 @@ class ShareLinksBiz(Crypter):
def handle_errors(self):
if "The inserted password was wrong" in self.html:
- self.log_debug("Incorrect password, please set right password on 'Edit package' form and retry")
- self.fail(_("Incorrect password, please set right password on 'Edit package' form and retry"))
+ self.fail(_("Wrong password"))
if self.captcha:
if "Your choice was wrong" in self.html:
- self.captcha.invalid()
- self.retry(delay=5)
+ self.retry_captcha(wait=5)
else:
self.captcha.correct()
@@ -172,7 +176,7 @@ class ShareLinksBiz(Crypter):
#: Extract from web package header
title_re = r'<h2><img.*?/>(.*)</h2>'
m = re.search(title_re, self.html, re.S)
- if m:
+ if m is not None:
title = m.group(1).strip()
if 'unnamed' not in title:
name = folder = title
diff --git a/module/plugins/crypter/UlozToFolder.py b/module/plugins/crypter/UlozToFolder.py
index 19569ef31..f2d0e7c17 100644
--- a/module/plugins/crypter/UlozToFolder.py
+++ b/module/plugins/crypter/UlozToFolder.py
@@ -36,7 +36,7 @@ class UlozToFolder(Crypter):
new_links.extend(re.findall(self.LINK_PATTERN, m.group(1)))
m = re.search(self.NEXT_PAGE_PATTERN, html)
- if m:
+ if m is not None:
html = self.load("http://ulozto.net/" + m.group(1))
else:
break