Add the "ord" template parameter (fixes issue #101)
authorRicardo Garcia <sarbalap+freshmeat@gmail.com>
Sat, 3 Apr 2010 07:54:36 +0000 (09:54 +0200)
committerRicardo Garcia <sarbalap+freshmeat@gmail.com>
Sun, 31 Oct 2010 10:26:53 +0000 (11:26 +0100)
youtube-dl

index 09f1441a4a83235836a7807059af69074606d277..4cb958336d626367b4f15d6646a5fbe364144659 100755 (executable)
@@ -201,12 +201,14 @@ class FileDownloader(object):
        _ies = []
        _pps = []
        _download_retcode = None
+       _num_downloads = None
 
        def __init__(self, params):
                """Create a FileDownloader object with the given options."""
                self._ies = []
                self._pps = []
                self._download_retcode = 0
+               self._num_downloads = 0
                self.params = params
        
        @staticmethod
@@ -402,6 +404,7 @@ class FileDownloader(object):
                try:
                        template_dict = dict(info_dict)
                        template_dict['epoch'] = unicode(long(time.time()))
+                       template_dict['ord'] = unicode('%05d' % self._num_downloads)
                        filename = self.params['outtmpl'] % template_dict
                except (ValueError, KeyError), err:
                        self.trouble('ERROR: invalid output template or system charset: %s' % str(err))
@@ -555,6 +558,7 @@ class FileDownloader(object):
                                try:
                                        (stream, filename) = sanitize_open(filename, open_mode)
                                        self.report_destination(filename)
+                                       self._num_downloads += 1
                                except (OSError, IOError), err:
                                        self.trouble('ERROR: unable to open for writing: %s' % str(err))
                                        return False