diff --git a/youtube_dl/postprocessor/execafterdownload.py b/youtube_dl/postprocessor/execafterdownload.py index da60671d2..0d19f1d1e 100644 --- a/youtube_dl/postprocessor/execafterdownload.py +++ b/youtube_dl/postprocessor/execafterdownload.py @@ -1,6 +1,7 @@ from __future__ import unicode_literals import subprocess +import sys from .common import PostProcessor from ..compat import compat_shlex_quote @@ -17,14 +18,14 @@ class ExecAfterDownloadPP(PostProcessor): def run(self, information): cmd = self.exec_cmd - info = {} - - for key in information: - value = information[key] - info[key] = compat_shlex_quote(value) if isinstance(value, (str, unicode)) else value # expose info to exec argument # youtube-dl -x -o "%(playlist_index)s - %(title)s.%(ext)s" --exec "id3v2 -T {0[playlist_index]} -t {0[title]} {0[filepath]}" PLAYLIST_ID + str_types = (str) if sys.version_info.major > 2 else (str, unicode) + info = {} + for key in information: + value = information[key] + info[key] = compat_shlex_quote(value) if isinstance(value, str_types) else value cmd = cmd.format(info) self._downloader.to_screen('[exec] Executing command: %s' % cmd)