mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-11-21 20:46:36 -05:00
[tv2:article] Fix extraction (Closes #10188)
This commit is contained in:
parent
0cacae2807
commit
481c5c5137
1 changed files with 18 additions and 3 deletions
|
@ -8,6 +8,7 @@
|
||||||
determine_ext,
|
determine_ext,
|
||||||
int_or_none,
|
int_or_none,
|
||||||
float_or_none,
|
float_or_none,
|
||||||
|
js_to_json,
|
||||||
parse_iso8601,
|
parse_iso8601,
|
||||||
remove_end,
|
remove_end,
|
||||||
)
|
)
|
||||||
|
@ -105,7 +106,7 @@ class TV2ArticleIE(InfoExtractor):
|
||||||
'url': 'http://www.tv2.no/2015/05/16/nyheter/alesund/krim/pingvin/6930542',
|
'url': 'http://www.tv2.no/2015/05/16/nyheter/alesund/krim/pingvin/6930542',
|
||||||
'info_dict': {
|
'info_dict': {
|
||||||
'id': '6930542',
|
'id': '6930542',
|
||||||
'title': 'Russen hetses etter pingvintyveri – innrømmer å ha åpnet luken på buret',
|
'title': 'Russen hetses etter pingvintyveri - innrømmer å ha åpnet luken på buret',
|
||||||
'description': 'md5:339573779d3eea3542ffe12006190954',
|
'description': 'md5:339573779d3eea3542ffe12006190954',
|
||||||
},
|
},
|
||||||
'playlist_count': 2,
|
'playlist_count': 2,
|
||||||
|
@ -119,9 +120,23 @@ def _real_extract(self, url):
|
||||||
|
|
||||||
webpage = self._download_webpage(url, playlist_id)
|
webpage = self._download_webpage(url, playlist_id)
|
||||||
|
|
||||||
|
# Old embed pattern (looks unused nowadays)
|
||||||
|
assets = re.findall(r'data-assetid=["\'](\d+)', webpage)
|
||||||
|
|
||||||
|
if not assets:
|
||||||
|
# New embed pattern
|
||||||
|
for v in re.findall('TV2ContentboxVideo\(({.+?})\)', webpage):
|
||||||
|
video = self._parse_json(
|
||||||
|
v, playlist_id, transform_source=js_to_json, fatal=False)
|
||||||
|
if not video:
|
||||||
|
continue
|
||||||
|
asset = video.get('assetId')
|
||||||
|
if asset:
|
||||||
|
assets.append(asset)
|
||||||
|
|
||||||
entries = [
|
entries = [
|
||||||
self.url_result('http://www.tv2.no/v/%s' % video_id, 'TV2')
|
self.url_result('http://www.tv2.no/v/%s' % asset_id, 'TV2')
|
||||||
for video_id in re.findall(r'data-assetid="(\d+)"', webpage)]
|
for asset_id in assets]
|
||||||
|
|
||||||
title = remove_end(self._og_search_title(webpage), ' - TV2.no')
|
title = remove_end(self._og_search_title(webpage), ' - TV2.no')
|
||||||
description = remove_end(self._og_search_description(webpage), ' - TV2.no')
|
description = remove_end(self._og_search_description(webpage), ' - TV2.no')
|
||||||
|
|
Loading…
Reference in a new issue