|
|
@ -1,3 +1,5 @@ |
|
|
|
from __future__ import unicode_literals |
|
|
|
|
|
|
|
import os |
|
|
|
import time |
|
|
|
|
|
|
@ -106,7 +108,7 @@ class HttpFD(FileDownloader): |
|
|
|
self.report_retry(count, retries) |
|
|
|
|
|
|
|
if count > retries: |
|
|
|
self.report_error(u'giving up after %s retries' % retries) |
|
|
|
self.report_error('giving up after %s retries' % retries) |
|
|
|
return False |
|
|
|
|
|
|
|
data_len = data.info().get('Content-length', None) |
|
|
@ -124,10 +126,10 @@ class HttpFD(FileDownloader): |
|
|
|
min_data_len = self.params.get("min_filesize", None) |
|
|
|
max_data_len = self.params.get("max_filesize", None) |
|
|
|
if min_data_len is not None and data_len < min_data_len: |
|
|
|
self.to_screen(u'\r[download] File is smaller than min-filesize (%s bytes < %s bytes). Aborting.' % (data_len, min_data_len)) |
|
|
|
self.to_screen('\r[download] File is smaller than min-filesize (%s bytes < %s bytes). Aborting.' % (data_len, min_data_len)) |
|
|
|
return False |
|
|
|
if max_data_len is not None and data_len > max_data_len: |
|
|
|
self.to_screen(u'\r[download] File is larger than max-filesize (%s bytes > %s bytes). Aborting.' % (data_len, max_data_len)) |
|
|
|
self.to_screen('\r[download] File is larger than max-filesize (%s bytes > %s bytes). Aborting.' % (data_len, max_data_len)) |
|
|
|
return False |
|
|
|
|
|
|
|
data_len_str = format_bytes(data_len) |
|
|
@ -151,13 +153,13 @@ class HttpFD(FileDownloader): |
|
|
|
filename = self.undo_temp_name(tmpfilename) |
|
|
|
self.report_destination(filename) |
|
|
|
except (OSError, IOError) as err: |
|
|
|
self.report_error(u'unable to open for writing: %s' % str(err)) |
|
|
|
self.report_error('unable to open for writing: %s' % str(err)) |
|
|
|
return False |
|
|
|
try: |
|
|
|
stream.write(data_block) |
|
|
|
except (IOError, OSError) as err: |
|
|
|
self.to_stderr(u"\n") |
|
|
|
self.report_error(u'unable to write data: %s' % str(err)) |
|
|
|
self.to_stderr('\n') |
|
|
|
self.report_error('unable to write data: %s' % str(err)) |
|
|
|
return False |
|
|
|
if not self.params.get('noresizebuffer', False): |
|
|
|
block_size = self.best_block_size(after - before, len(data_block)) |
|
|
@ -188,10 +190,10 @@ class HttpFD(FileDownloader): |
|
|
|
self.slow_down(start, byte_counter - resume_len) |
|
|
|
|
|
|
|
if stream is None: |
|
|
|
self.to_stderr(u"\n") |
|
|
|
self.report_error(u'Did not get any data blocks') |
|
|
|
self.to_stderr('\n') |
|
|
|
self.report_error('Did not get any data blocks') |
|
|
|
return False |
|
|
|
if tmpfilename != u'-': |
|
|
|
if tmpfilename != '-': |
|
|
|
stream.close() |
|
|
|
self.report_finish(data_len_str, (time.time() - start)) |
|
|
|
if data_len is not None and byte_counter != data_len: |
|
|
|