aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRicardo Garcia <sarbalap+freshmeat@gmail.com>2011-01-07 10:23:18 +0100
committerRicardo Garcia <sarbalap+freshmeat@gmail.com>2011-01-07 10:23:18 +0100
commit3fb2c487c05cb9998a7ae6fb1dc8ca2c4d25a9aa (patch)
tree463dde730360fad9c994a26d3b36332bd65569ed
parentd3975459d15e0e3c8e695d36990860b16ad1b97e (diff)
downloadyoutube-dl-3fb2c487c05cb9998a7ae6fb1dc8ca2c4d25a9aa.tar.xz
Add --no-part option (closes #48)
-rwxr-xr-xyoutube-dl24
1 files changed, 14 insertions, 10 deletions
diff --git a/youtube-dl b/youtube-dl
index 6a648e723..b2ef1251a 100755
--- a/youtube-dl
+++ b/youtube-dl
@@ -210,6 +210,7 @@ class FileDownloader(object):
playlistend: Playlist item to end at.
logtostderr: Log messages to stderr instead of stdout.
consoletitle: Display progress in console window's titlebar.
+ nopart: Do not use temporary .part files.
"""
params = None
@@ -237,14 +238,7 @@ class FileDownloader(object):
for dir in aggregate:
if not os.path.exists(dir):
os.mkdir(dir)
-
- @staticmethod
- def temp_name(filename):
- """Returns a temporary filename for the given filename."""
- if filename == u'-' or (os.path.exists(filename) and not os.path.isfile(filename)):
- return filename
- return filename + u'.part'
-
+
@staticmethod
def format_bytes(bytes):
if bytes is None:
@@ -374,7 +368,14 @@ class FileDownloader(object):
speed = float(byte_counter) / elapsed
if speed > rate_limit:
time.sleep((byte_counter - rate_limit * (now - start_time)) / rate_limit)
-
+
+ def temp_name(self, filename):
+ """Returns a temporary filename for the given filename."""
+ if self.params.get('nopart', False) or filename == u'-' or \
+ (os.path.exists(filename) and not os.path.isfile(filename)):
+ return filename
+ return filename + u'.part'
+
def try_rename(self, old_filename, new_filename):
try:
if old_filename == new_filename:
@@ -547,7 +548,7 @@ class FileDownloader(object):
def _do_download(self, filename, url, player_url):
# Check file already present
- if self.params.get('continuedl', False) and os.path.isfile(filename):
+ if self.params.get('continuedl', False) and os.path.isfile(filename) and not self.params.get('nopart', False):
self.report_file_already_downloaded(filename)
return True
@@ -2329,6 +2330,8 @@ if __name__ == '__main__':
action='store_true', dest='continue_dl', help='resume partially downloaded files', default=False)
filesystem.add_option('--cookies',
dest='cookiefile', metavar='FILE', help='file to dump cookie jar to')
+ filesystem.add_option('--no-part',
+ action='store_true', dest='nopart', help='do not use .part files', default=False)
parser.add_option_group(filesystem)
(opts, args) = parser.parse_args()
@@ -2452,6 +2455,7 @@ if __name__ == '__main__':
'playlistend': opts.playlistend,
'logtostderr': opts.outtmpl == '-',
'consoletitle': opts.consoletitle,
+ 'nopart': opts.nopart,
})
fd.add_info_extractor(youtube_search_ie)
fd.add_info_extractor(youtube_pl_ie)