mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-11-07 20:30:41 -05:00
Add a playlist_index key to the info_dict, can be used in the output template
This commit is contained in:
parent
bce878a7c1
commit
d281274bf2
2 changed files with 5 additions and 0 deletions
|
@ -145,6 +145,7 @@ # OUTPUT TEMPLATE
|
|||
- `epoch`: The sequence will be replaced by the Unix epoch when creating the file.
|
||||
- `autonumber`: The sequence will be replaced by a five-digit number that will be increased with each download, starting at zero.
|
||||
- `playlist`: The name or the id of the playlist that contains the video.
|
||||
- `playlist_index`: The index of the video in the playlist, a five-digit number.
|
||||
|
||||
The current default template is `%(id)s.%(ext)s`, but that will be switchted to `%(title)s-%(id)s.%(ext)s` (which can be requested with `-t` at the moment).
|
||||
|
||||
|
|
|
@ -389,6 +389,8 @@ def prepare_filename(self, info_dict):
|
|||
|
||||
template_dict['epoch'] = int(time.time())
|
||||
template_dict['autonumber'] = u'%05d' % self._num_downloads
|
||||
if template_dict['playlist_index'] is not None:
|
||||
template_dict['playlist_index'] = u'%05d' % template_dict['playlist_index']
|
||||
|
||||
sanitize = lambda k,v: sanitize_filename(
|
||||
u'NA' if v is None else compat_str(v),
|
||||
|
@ -473,6 +475,7 @@ def process_ie_result(self, ie_result, download = True):
|
|||
if 'playlist' not in ie_result:
|
||||
#It isn't part of a playlist
|
||||
ie_result['playlist'] = None
|
||||
ie_result['playlist_index'] = None
|
||||
if download:
|
||||
#Do the download:
|
||||
self.process_info(ie_result)
|
||||
|
@ -506,6 +509,7 @@ def process_ie_result(self, ie_result, download = True):
|
|||
self.to_screen(u'[download] Downloading video #%s of %s' %(i, n_entries))
|
||||
entry_result = self.process_ie_result(entry, False)
|
||||
entry_result['playlist'] = playlist
|
||||
entry_result['playlist_index'] = i + playliststart
|
||||
#We must do the download here to correctly set the 'playlist' key
|
||||
if download:
|
||||
self.process_info(entry_result)
|
||||
|
|
Loading…
Reference in a new issue