mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-11-27 10:52:34 +00:00
[viidia] Cleaup
[viidea] extract playlist if lecture is an event [viidia] use compat_str
This commit is contained in:
parent
8e3a2bd620
commit
6fdb39ded1
@ -4,11 +4,10 @@
|
|||||||
|
|
||||||
from .common import InfoExtractor
|
from .common import InfoExtractor
|
||||||
from ..compat import (
|
from ..compat import (
|
||||||
compat_HTTPError,
|
|
||||||
compat_urlparse,
|
compat_urlparse,
|
||||||
|
compat_str,
|
||||||
)
|
)
|
||||||
from ..utils import (
|
from ..utils import (
|
||||||
ExtractorError,
|
|
||||||
parse_duration,
|
parse_duration,
|
||||||
js_to_json,
|
js_to_json,
|
||||||
parse_iso8601,
|
parse_iso8601,
|
||||||
@ -97,9 +96,9 @@ def _real_extract(self, url):
|
|||||||
|
|
||||||
webpage = self._download_webpage(url, lecture_slug)
|
webpage = self._download_webpage(url, lecture_slug)
|
||||||
|
|
||||||
cfg = self._parse_json(self._search_regex(r'cfg\s*:\s*({[^}]+})', webpage, 'cfg'), lecture_slug, js_to_json)
|
cfg = self._parse_json(self._search_regex([r'cfg\s*:\s*({.+?}),[\da-zA-Z_]:\(?function', r'cfg\s*:\s*({[^}]+})'], webpage, 'cfg'), lecture_slug, js_to_json)
|
||||||
|
|
||||||
lecture_id = str(cfg['obj_id'])
|
lecture_id = compat_str(cfg['obj_id'])
|
||||||
|
|
||||||
base_url = self._proto_relative_url(cfg['livepipe'], 'http:')
|
base_url = self._proto_relative_url(cfg['livepipe'], 'http:')
|
||||||
|
|
||||||
@ -118,7 +117,7 @@ def _real_extract(self, url):
|
|||||||
parts = cfg.get('videos')
|
parts = cfg.get('videos')
|
||||||
if parts:
|
if parts:
|
||||||
if len(parts) == 1:
|
if len(parts) == 1:
|
||||||
part = str(parts[0])
|
part = compat_str(parts[0])
|
||||||
if part:
|
if part:
|
||||||
smil_url = '%s/%s/video/%s/smil.xml' % (base_url, lecture_slug, part)
|
smil_url = '%s/%s/video/%s/smil.xml' % (base_url, lecture_slug, part)
|
||||||
smil = self._download_smil(smil_url, lecture_id)
|
smil = self._download_smil(smil_url, lecture_id)
|
||||||
@ -132,7 +131,7 @@ def _real_extract(self, url):
|
|||||||
for part in parts:
|
for part in parts:
|
||||||
entries.append(self.url_result('%s/%s/video/%s' % (base_url, lecture_slug, part), 'Viidea'))
|
entries.append(self.url_result('%s/%s/video/%s' % (base_url, lecture_slug, part), 'Viidea'))
|
||||||
lecture_info['_type'] = 'multi_video'
|
lecture_info['_type'] = 'multi_video'
|
||||||
else:
|
if not parts or lecture_data.get('type') == 'evt':
|
||||||
# Probably a playlist
|
# Probably a playlist
|
||||||
playlist_webpage = self._download_webpage('%s/site/ajax/drilldown/?id=%s' % (base_url, lecture_id), lecture_id)
|
playlist_webpage = self._download_webpage('%s/site/ajax/drilldown/?id=%s' % (base_url, lecture_id), lecture_id)
|
||||||
entries = [
|
entries = [
|
||||||
|
Loading…
Reference in New Issue
Block a user