[extractor/common] Use episode name as title in _json_ld
authorSergey M․ <dstftw@gmail.com>
Tue, 8 Jan 2019 03:02:49 +0000 (10:02 +0700)
committerSergey M․ <dstftw@gmail.com>
Tue, 8 Jan 2019 03:02:49 +0000 (10:02 +0700)
youtube_dl/extractor/common.py

index f507400cc34facb450015bd7254d4f98b85487a5..9e7febcadf12c9d2450f35783e45b4b6d04dbe3f 100644 (file)
@@ -1239,11 +1239,14 @@ class InfoExtractor(object):
                 if expected_type is not None and expected_type != item_type:
                     return info
                 if item_type in ('TVEpisode', 'Episode'):
+                    episode_name = unescapeHTML(e.get('name'))
                     info.update({
-                        'episode': unescapeHTML(e.get('name')),
+                        'episode': episode_name,
                         'episode_number': int_or_none(e.get('episodeNumber')),
                         'description': unescapeHTML(e.get('description')),
                     })
+                    if not info.get('title') and episode_name:
+                        info['title'] = episode_name
                     part_of_season = e.get('partOfSeason')
                     if isinstance(part_of_season, dict) and part_of_season.get('@type') in ('TVSeason', 'Season', 'CreativeWorkSeason'):
                         info['season_number'] = int_or_none(part_of_season.get('seasonNumber'))