don't print status during upload

This commit is contained in:
j 2021-02-19 00:10:59 +01:00
parent 2ebc6ffd3a
commit f7c7a6689b

View file

@ -151,7 +151,7 @@ class API(object):
fd.write(chunk) fd.write(chunk)
shutil.move(tmpname, filename) shutil.move(tmpname, filename)
def upload_chunks(self, url, filename, data=None): def upload_chunks(self, url, filename, data=None, silent=False):
form = MultiPartForm() form = MultiPartForm()
if data: if data:
for key in data: for key in data:
@ -188,26 +188,31 @@ class API(object):
try: try:
data = self._json_request(uploadUrl, form) data = self._json_request(uploadUrl, form)
except KeyboardInterrupt: except KeyboardInterrupt:
print("\ninterrupted by user.") if not slient:
print("\ninterrupted by user.")
sys.exit(1) sys.exit(1)
except: except:
print("uploading chunk failed, will try again in 5 seconds\r", end='') if not slient:
print("uploading chunk failed, will try again in 5 seconds\r", end='')
sys.stdout.flush() sys.stdout.flush()
data = {'result': -1} data = {'result': -1}
time.sleep(5) time.sleep(5)
if data and 'status' in data: if data and 'status' in data:
if data['status']['code'] == 403: if data['status']['code'] == 403:
print("login required") if not slient:
print("login required")
return False return False
if data['status']['code'] != 200: if data['status']['code'] != 200:
print("request returned error, will try again in 5 seconds") if not slient:
print("request returned error, will try again in 5 seconds")
if self.DEBUG: if self.DEBUG:
print(data) print(data)
time.sleep(5) time.sleep(5)
if data and data.get('result') == 1: if data and data.get('result') == 1:
done += len(chunk) done += len(chunk)
if data.get('offset') not in (None, done): if data.get('offset') not in (None, done):
print('server offset out of sync, continue from', data['offset']) if not slient:
print('server offset out of sync, continue from', data['offset'])
done = data['offset'] done = data['offset']
f.seek(done) f.seek(done)
chunk = f.read(CHUNK_SIZE) chunk = f.read(CHUNK_SIZE)