Compare commits

..

2 commits

Author SHA1 Message Date
j
7e72cfd163 support dat 2021-02-23 09:09:35 +01:00
j
f7c7a6689b don't print status during upload 2021-02-19 00:10:59 +01:00
2 changed files with 14 additions and 7 deletions

View file

@ -151,7 +151,8 @@ 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,18 +189,22 @@ class API(object):
try: try:
data = self._json_request(uploadUrl, form) data = self._json_request(uploadUrl, form)
except KeyboardInterrupt: except KeyboardInterrupt:
if not slient:
print("\ninterrupted by user.") print("\ninterrupted by user.")
sys.exit(1) sys.exit(1)
except: except:
if not slient:
print("uploading chunk failed, will try again in 5 seconds\r", end='') 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:
if not slient:
print("login required") print("login required")
return False return False
if data['status']['code'] != 200: if data['status']['code'] != 200:
if not slient:
print("request returned error, will try again in 5 seconds") print("request returned error, will try again in 5 seconds")
if self.DEBUG: if self.DEBUG:
print(data) print(data)
@ -207,6 +212,7 @@ class API(object):
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):
if not slient:
print('server offset out of sync, continue from', data['offset']) print('server offset out of sync, continue from', data['offset'])
done = data['offset'] done = data['offset']
f.seek(done) f.seek(done)

View file

@ -32,7 +32,8 @@ EXTENSIONS = {
'avi', 'divx', 'dv', 'flv', 'm2t', 'm2ts', 'm4v', 'mkv', 'mov', 'mp4', 'avi', 'divx', 'dv', 'flv', 'm2t', 'm2ts', 'm4v', 'mkv', 'mov', 'mp4',
'mpeg', 'mpg', 'mts', 'ogm', 'ogv', 'rm', 'rmvb', 'vob', 'webm', 'wmv', 'asf', 'mpeg', 'mpg', 'mts', 'ogm', 'ogv', 'rm', 'rmvb', 'vob', 'webm', 'wmv', 'asf',
'mod', 'tod', # http://en.wikipedia.org/wiki/MOD_and_TOD 'mod', 'tod', # http://en.wikipedia.org/wiki/MOD_and_TOD
'mxf', 'ts' 'mxf', 'ts',
'dat', # VOD files
], ],
} }