diff options
| -rw-r--r-- | youtube_dl/options.py | 11 | ||||
| -rw-r--r-- | youtube_dl/postprocessor/metadatafromtitle.py | 4 | 
2 files changed, 9 insertions, 6 deletions
| diff --git a/youtube_dl/options.py b/youtube_dl/options.py index 52309fb84..57f2e2c1e 100644 --- a/youtube_dl/options.py +++ b/youtube_dl/options.py @@ -814,11 +814,12 @@ def parseOpts(overrideArguments=None):          '--metadata-from-title',          metavar='FORMAT', dest='metafromtitle',          help='Parse additional metadata like song title / artist from the video title. ' -             'The format syntax is the same as --output, ' -             'the parsed parameters replace existing values. ' -             'Additional templates: %(album)s, %(artist)s. ' -             'Example: --metadata-from-title "%(artist)s - %(title)s" matches a title like ' -             '"Coldplay - Paradise"') +             'The format syntax is the same as --output. Regular expression with ' +             'named capture groups may also be used. ' +             'The parsed parameters replace existing values. ' +             'Example: --metadata-from-title "%(artist)s - %(title)s" matches a title like '  +             '"Coldplay - Paradise". ' +             'Example (regex): --metadata-from-title "(?P<artist>.+?) - (?P<title>.+)"')      postproc.add_option(          '--xattrs',          action='store_true', dest='xattrs', default=False, diff --git a/youtube_dl/postprocessor/metadatafromtitle.py b/youtube_dl/postprocessor/metadatafromtitle.py index a7d637a3c..c73f02447 100644 --- a/youtube_dl/postprocessor/metadatafromtitle.py +++ b/youtube_dl/postprocessor/metadatafromtitle.py @@ -9,7 +9,9 @@ class MetadataFromTitlePP(PostProcessor):      def __init__(self, downloader, titleformat):          super(MetadataFromTitlePP, self).__init__(downloader)          self._titleformat = titleformat -        self._titleregex = self.format_to_regex(titleformat) +        self._titleregex = (self.format_to_regex(titleformat) +                            if re.search(r'%\(\w+\)s', titleformat) +                            else titleformat)      def format_to_regex(self, fmt):          r""" | 
