def _save_file(self, dest, response): content_length = int(response.headers['content-length']) msg = '[?] {0} length = {1}'.format(dest, convert_byte_size(content_length)) print(msg) logger.info(msg) with open(dest, 'wb') as f: dl = 0 for chunk in response.iter_content(chunk_size=1024*256): if chunk: dl += len(chunk) done = int(50 * dl / content_length) f.write(chunk) f.flush() if not self._is_async: self.print_progress_bar(done, dl, content_length) print() msg = '\n[+] Finished downloading {0}'.format(dest) logging.info(msg) print(msg)
def test_megabyte(self): self.assertEqual(convert_byte_size(self._size5), '1.0MB')
def test_kilobyte(self): self.assertEqual(convert_byte_size(self._size4), '1.0KB')
def test_zero_size(self): self.assertEqual(convert_byte_size(self._size3), '0B')
def test_negative_size(self): with self.assertRaises(ValueError): convert_byte_size(self._size2)
def test_none_size(self): with self.assertRaises(TypeError): convert_byte_size(self._size1)