]> gitweb @ CieloNegro.org - youtube-dl.git/commitdiff
[tv4] Fix extraction and extract series metadata (closes #22443)
authorSergey M․ <dstftw@gmail.com>
Wed, 18 Sep 2019 16:45:26 +0000 (23:45 +0700)
committerSergey M․ <dstftw@gmail.com>
Wed, 18 Sep 2019 16:45:26 +0000 (23:45 +0700)
youtube_dl/extractor/tv4.py

index 51923e44afcc7913c32406c940bba6aec9edbf13..a819d048c613929b79f090facc4a82a097e1cb73 100644 (file)
@@ -72,8 +72,13 @@ class TV4IE(InfoExtractor):
         video_id = self._match_id(url)
 
         info = self._download_json(
-            'http://www.tv4play.se/player/assets/%s.json' % video_id,
-            video_id, 'Downloading video info JSON')
+            'https://playback-api.b17g.net/asset/%s' % video_id,
+            video_id, 'Downloading video info JSON', query={
+                'service': 'tv4',
+                'device': 'browser',
+                'protocol': 'hls,dash',
+                'drm': 'widevine',
+            })['metadata']
 
         title = info['title']
 
@@ -111,5 +116,9 @@ class TV4IE(InfoExtractor):
             'timestamp': parse_iso8601(info.get('broadcast_date_time')),
             'duration': int_or_none(info.get('duration')),
             'thumbnail': info.get('image'),
-            'is_live': info.get('is_live') is True,
+            'is_live': info.get('isLive') is True,
+            'series': info.get('seriesTitle'),
+            'season_number': int_or_none(info.get('seasonNumber')),
+            'episode': info.get('episodeTitle'),
+            'episode_number': int_or_none(info.get('episodeNumber')),
         }