summaryrefslogtreecommitdiffstats
path: root/pyload/plugins/hoster/NetloadIn.py
diff options
context:
space:
mode:
Diffstat (limited to 'pyload/plugins/hoster/NetloadIn.py')
-rw-r--r--pyload/plugins/hoster/NetloadIn.py80
1 files changed, 44 insertions, 36 deletions
diff --git a/pyload/plugins/hoster/NetloadIn.py b/pyload/plugins/hoster/NetloadIn.py
index d6b1b77e2..5889611bb 100644
--- a/pyload/plugins/hoster/NetloadIn.py
+++ b/pyload/plugins/hoster/NetloadIn.py
@@ -26,10 +26,11 @@ def getInfo(urls):
api = getURL(apiurl + ids, decode=True)
if api is None or len(api) < 10:
- print "Netload prefetch: failed "
+ self.logDebug("Prefetch failed")
return
if api.find("unknown_auth") >= 0:
- print "Netload prefetch: Outdated auth code "
+ print
+ self.logDebug("Outdated auth code")
return
result = []
@@ -43,34 +44,36 @@ def getInfo(urls):
size = 0
result.append((tmp[1], size, 2 if tmp[3] == "online" else 1, chunk[i]))
except:
- print "Netload prefetch: Error while processing response: "
- print r
+ self.logDebug("Error while processing response: %s" % r)
yield result
class NetloadIn(Hoster):
- __name__ = "NetloadIn"
- __type__ = "hoster"
+ __name__ = "NetloadIn"
+ __type__ = "hoster"
__version__ = "0.45"
- __pattern__ = r'https?://(?:[^/]*\.)?netload\.in/(?:datei(.*?)(?:\.htm|/)|index.php?id=10&file_id=)'
+ __pattern__ = r'https?://(?:[^/]*\.)?netload\.in/(?:datei(.*?)(?:\.htm|/)|index\.php?id=10&file_id=)'
__description__ = """Netload.in hoster plugin"""
- __authors__ = [("spoob", "spoob@pyload.org"),
- ("RaNaN", "ranan@pyload.org"),
- ("Gregy", "gregy@gregy.cz")]
+ __license__ = "GPLv3"
+ __authors__ = [("spoob", "spoob@pyload.org"),
+ ("RaNaN", "ranan@pyload.org"),
+ ("Gregy", "gregy@gregy.cz")]
def setup(self):
self.multiDL = self.resumeDownload = self.premium
+
def process(self, pyfile):
self.url = pyfile.url
self.prepare()
pyfile.setStatus("downloading")
self.proceed(self.url)
+
def prepare(self):
self.download_api_data()
@@ -78,7 +81,7 @@ class NetloadIn(Hoster):
self.pyfile.name = self.api_data['filename']
if self.premium:
- self.logDebug("Netload: Use Premium Account")
+ self.logDebug("Use Premium Account")
settings = self.load("http://www.netload.in/index.php?id=2&lang=en")
if '<option value="2" selected="selected">Direkter Download' in settings:
self.logDebug("Using direct download")
@@ -89,9 +92,10 @@ class NetloadIn(Hoster):
if self.download_html():
return True
else:
- self.fail("Failed")
+ self.fail(_("Failed"))
return False
+
def download_api_data(self, n=0):
url = self.url
id_regex = re.compile(self.__pattern__)
@@ -106,18 +110,18 @@ class NetloadIn(Hoster):
return
apiurl = "http://api.netload.in/info.php"
- src = self.load(apiurl, cookies=False,
+ html = self.load(apiurl, cookies=False,
get={"file_id": match.group(1), "auth": "Zf9SnQh9WiReEsb18akjvQGqT0I830e8", "bz": "1",
"md5": "1"}, decode=True).strip()
- if not src and n <= 3:
+ if not html and n <= 3:
sleep(0.2)
self.download_api_data(n + 1)
return
- self.logDebug("Netload: APIDATA: " + src)
+ self.logDebug("APIDATA: " + html)
self.api_data = {}
- if src and ";" in src and src not in ("unknown file_data", "unknown_server_data", "No input file specified."):
- lines = src.split(";")
+ if html and ";" in html and html not in ("unknown file_data", "unknown_server_data", "No input file specified."):
+ lines = html.split(";")
self.api_data['exists'] = True
self.api_data['fileid'] = lines[0]
self.api_data['filename'] = lines[1]
@@ -133,20 +137,22 @@ class NetloadIn(Hoster):
else:
self.api_data = False
+
def final_wait(self, page):
wait_time = self.get_wait_time(page)
self.setWait(wait_time)
- self.logDebug("Netload: final wait %d seconds" % wait_time)
+ self.logDebug("Final wait %d seconds" % wait_time)
self.wait()
self.url = self.get_file_url(page)
+
def download_html(self):
- self.logDebug("Netload: Entering download_html")
+ self.logDebug("Entering download_html")
page = self.load(self.url, decode=True)
t = time() + 30
if "/share/templates/download_hddcrash.tpl" in page:
- self.logError("Netload HDD Crash")
+ self.logError(_("Netload HDD Crash"))
self.fail(_("File temporarily not available"))
if not self.api_data:
@@ -155,7 +161,7 @@ class NetloadIn(Hoster):
if "* The file was deleted" in page:
self.offline()
- name = re.search(r'class="dl_first_filename">([^<]+)', page, re.MULTILINE)
+ name = re.search(r'class="dl_first_filename">([^<]+)', page, re.M)
# the found filename is not truncated
if name:
name = name.group(1).strip()
@@ -170,28 +176,27 @@ class NetloadIn(Hoster):
t = time() + 30
if "/share/templates/download_hddcrash.tpl" in page:
- self.logError("Netload HDD Crash")
+ self.logError(_("Netload HDD Crash"))
self.fail(_("File temporarily not available"))
- self.logDebug("Netload: try number %d " % i)
+ self.logDebug("Try number %d " % i)
if ">Your download is being prepared.<" in page:
- self.logDebug("Netload: We will prepare your download")
+ self.logDebug("We will prepare your download")
self.final_wait(page)
return True
if ">An access request has been made from IP address <" in page:
wait = self.get_wait_time(page)
if not wait:
- self.logDebug("Netload: Wait was 0 setting 30")
+ self.logDebug("Wait was 0 setting 30")
wait = 30 * 60
- self.logInfo(_("Netload: waiting between downloads %d s." % wait))
- self.wantReconnect = True
- self.setWait(wait)
+ self.logInfo(_("Waiting between downloads %d seconds") % wait)
+ self.setWait(wait, True)
self.wait()
return self.download_html()
- self.logDebug("Netload: Trying to find captcha")
+ self.logDebug("Trying to find captcha")
try:
url_captcha_html = "http://netload.in/" + re.search('(index.php\?id=10&amp;.*&amp;captcha=1)',
@@ -204,7 +209,7 @@ class NetloadIn(Hoster):
page = self.load(url_captcha_html, cookies=True)
captcha_url = "http://netload.in/" + re.search('(share/includes/captcha.php\?t=\d*)', page).group(1)
except:
- self.logDebug("Netload: Could not find captcha, try again from beginning")
+ self.logDebug("Could not find captcha, try again from beginning")
captchawaited = False
continue
@@ -215,7 +220,7 @@ class NetloadIn(Hoster):
self.pyfile.waitUntil = time() # dont wait contrary to time on website
else:
self.pyfile.waitUntil = t
- self.logInfo(_("Netload: waiting for captcha %d s.") % (self.pyfile.waitUntil - time()))
+ self.logInfo(_("Waiting for captcha %d seconds") % (self.pyfile.waitUntil - time()))
#self.setWait(wait)
self.wait()
captchawaited = True
@@ -226,27 +231,30 @@ class NetloadIn(Hoster):
return False
+
def get_file_url(self, page):
try:
- file_url_pattern = r"<a class=\"Orange_Link\" href=\"(http://.+)\".?>Or click here"
+ file_url_pattern = r'<a class="Orange_Link" href="(http://.+)".?>Or click here'
attempt = re.search(file_url_pattern, page)
if attempt is not None:
return attempt.group(1)
else:
- self.logDebug("Netload: Backup try for final link")
- file_url_pattern = r"<a href=\"(.+)\" class=\"Orange_Link\">Click here"
+ self.logDebug("Backup try for final link")
+ file_url_pattern = r'<a href="(.+)" class="Orange_Link">Click here'
attempt = re.search(file_url_pattern, page)
return "http://netload.in/" + attempt.group(1)
except:
- self.logDebug("Netload: Getting final link failed")
+ self.logDebug("Getting final link failed")
return None
+
def get_wait_time(self, page):
wait_seconds = int(re.search(r"countdown\((.+),'change\(\)'\)", page).group(1)) / 100
return wait_seconds
+
def proceed(self, url):
- self.logDebug("Netload: Downloading..")
+ self.logDebug("Downloading..")
self.download(url, disposition=True)