projects
/
youtube-dl
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
2ea2126
)
[downloader/external] Simplify finished progress hook reporting and add elapsed time...
author
Sergey M․
<dstftw@gmail.com>
Sat, 24 Mar 2018 09:29:03 +0000
(16:29 +0700)
committer
Sergey M․
<dstftw@gmail.com>
Sat, 24 Mar 2018 09:35:21 +0000
(16:35 +0700)
youtube_dl/downloader/external.py
patch
|
blob
|
history
diff --git
a/youtube_dl/downloader/external.py
b/youtube_dl/downloader/external.py
index 48c255ddc69c1740272831d5f6d262576b09f889..958d00aac0ae0a3d58eca9069429cd305a137449 100644
(file)
--- a/
youtube_dl/downloader/external.py
+++ b/
youtube_dl/downloader/external.py
@@
-1,9
+1,10
@@
from __future__ import unicode_literals
import os.path
from __future__ import unicode_literals
import os.path
+import re
import subprocess
import sys
import subprocess
import sys
-import
r
e
+import
tim
e
from .common import FileDownloader
from ..compat import (
from .common import FileDownloader
from ..compat import (
@@
-30,6
+31,7
@@
class ExternalFD(FileDownloader):
tmpfilename = self.temp_name(filename)
try:
tmpfilename = self.temp_name(filename)
try:
+ started = time.time()
retval = self._call_downloader(tmpfilename, info_dict)
except KeyboardInterrupt:
if not info_dict.get('is_live'):
retval = self._call_downloader(tmpfilename, info_dict)
except KeyboardInterrupt:
if not info_dict.get('is_live'):
@@
-41,21
+43,20
@@
class ExternalFD(FileDownloader):
self.to_screen('[%s] Interrupted by user' % self.get_basename())
if retval == 0:
self.to_screen('[%s] Interrupted by user' % self.get_basename())
if retval == 0:
- if filename == '-':
- self._hook_progress({
-
'filename': filename
,
-
'status': 'finished'
,
- })
-
else
:
+ status = {
+ 'filename': filename,
+
'status': 'finished'
,
+
'elapsed': time.time() - started
,
+ }
+
if filename != '-'
:
fsize = os.path.getsize(encodeFilename(tmpfilename))
self.to_screen('\r[%s] Downloaded %s bytes' % (self.get_basename(), fsize))
self.try_rename(tmpfilename, filename)
fsize = os.path.getsize(encodeFilename(tmpfilename))
self.to_screen('\r[%s] Downloaded %s bytes' % (self.get_basename(), fsize))
self.try_rename(tmpfilename, filename)
- s
elf._hook_progress
({
+ s
tatus.update
({
'downloaded_bytes': fsize,
'total_bytes': fsize,
'downloaded_bytes': fsize,
'total_bytes': fsize,
- 'filename': filename,
- 'status': 'finished',
})
})
+ self._hook_progress(status)
return True
else:
self.to_stderr('\n')
return True
else:
self.to_stderr('\n')