diff --git a/youtube_dl/extractor/prosiebensat1.py b/youtube_dl/extractor/prosiebensat1.py
index 7efff4566..dbd7dd11d 100644
--- a/youtube_dl/extractor/prosiebensat1.py
+++ b/youtube_dl/extractor/prosiebensat1.py
@@ -374,10 +374,11 @@ class ProSiebenSat1IE(ProSiebenSat1BaseIE):
r'(\d{2}\.\d{2}\.\d{4}) \| \d{2}:\d{2} Min
',
]
_PAGE_TYPE_REGEXES = [
- r'',
+ r'',
r"'itemType'\s*:\s*'([^']*)'",
]
_PLAYLIST_ID_REGEXES = [
+ r'',
r'content[iI]d=(\d+)',
r"'itemId'\s*:\s*'([^']*)'",
]
@@ -414,11 +415,12 @@ class ProSiebenSat1IE(ProSiebenSat1BaseIE):
self._PLAYLIST_ID_REGEXES, webpage, 'playlist id')
playlist = self._parse_json(
self._search_regex(
- r'var\s+contentResources\s*=\s*(\[.+?\]);\s*(.+?)',
webpage, 'playlist'),
- playlist_id)
+ playlist_id).get('page').get('clips')
entries = []
- for item in playlist:
+ for playlist_item in playlist:
+ item = self._parse_json(playlist_item.get('contentResource'), playlist_id)[0]
clip_id = item.get('id') or item.get('upc')
if not clip_id:
continue