1
0
mirror of https://github.com/l1ving/youtube-dl synced 2025-03-10 05:47:24 +08:00

[dbtv] Updated extractor according to site changes (was broken)

This commit is contained in:
Forthrin 2019-05-08 08:10:23 +02:00
parent 71ebd35d50
commit 1402905a42
2 changed files with 51 additions and 35 deletions

View File

@ -7,50 +7,63 @@ from .common import InfoExtractor
class DBTVIE(InfoExtractor): class DBTVIE(InfoExtractor):
_VALID_URL = r'https?://(?:www\.)?dbtv\.no/(?:[^/]+/)?(?P<id>[0-9]+)(?:#(?P<display_id>.+))?' _VALID_URL = r'https://www\.dagbladet\.no/video/[^/]+/(?P<id>[^/]+)/?$'
_TESTS = [{ _TESTS = [{
'url': 'http://dbtv.no/3649835190001#Skulle_teste_ut_fornøyelsespark,_men_kollegaen_var_bare_opptatt_av_bikinikroppen', 'url': 'https://www.dagbladet.no/video/trailer-our-planet/hdECB3y6',
'md5': '2e24f67936517b143a234b4cadf792ec',
'info_dict': { 'info_dict': {
'id': '3649835190001', 'id': 'hdECB3y6',
'display_id': 'Skulle_teste_ut_fornøyelsespark,_men_kollegaen_var_bare_opptatt_av_bikinikroppen',
'ext': 'mp4', 'ext': 'mp4',
'title': 'Skulle teste ut fornøyelsespark, men kollegaen var bare opptatt av bikinikroppen', 'title': 'Trailer: «Our Planet»',
'description': 'md5:1504a54606c4dde3e4e61fc97aa857e0', },
'thumbnail': r're:https?://.*\.jpg', 'params': {
'timestamp': 1404039863, 'skip_download': True,
'upload_date': '20140629',
'duration': 69.544,
'uploader_id': '1027729757001',
}, },
'add_ie': ['BrightcoveNew']
}, {
'url': 'http://dbtv.no/3649835190001',
'only_matching': True,
}, {
'url': 'http://www.dbtv.no/lazyplayer/4631135248001',
'only_matching': True,
}, {
'url': 'http://dbtv.no/vice/5000634109001',
'only_matching': True,
}, {
'url': 'http://dbtv.no/filmtrailer/3359293614001',
'only_matching': True,
}] }]
@staticmethod def _real_extract(self, url):
def _extract_urls(webpage): mobj = re.search(self._VALID_URL, url)
return [url for _, url in re.findall( video_id = mobj.group("id")
r'<iframe[^>]+src=(["\'])((?:https?:)?//(?:www\.)?dbtv\.no/(?:lazy)?player/\d+.*?)\1', webpage = self._download_webpage(url, video_id)
webpage)] title = self._og_search_title(webpage)
video_url = 'https://content.jwplatform.com/manifests/%s.m3u8' % video_id
formats = self._extract_m3u8_formats(video_url, video_id, 'mp4')
self._sort_formats(formats)
return {
'url': video_url,
'id': video_id,
'title': title,
'formats': formats,
}
class DBYTIE(InfoExtractor):
_VALID_URL = r'https://www\.dagbladet\.no/video/(?P<id>[^/]+)/?$'
_TESTS = [{
'url': 'https://www.dagbladet.no/video/-VPqpBpkwDk/',
'info_dict': {
'id': '-VPqpBpkwDk',
'ext': 'mp4',
'upload_date': '20160916',
'uploader': 'Dagbladet',
'description': 'Video originally published on dagbladet.no/dbtv.no on 19.03.2014\n\nTrailer - Børning',
'uploader_id': 'UCk5pvsyZJoYJBd7_oFPTlRQ',
'title': 'Børning',
},
'params': {
'skip_download': True,
},
}]
def _real_extract(self, url): def _real_extract(self, url):
video_id, display_id = re.match(self._VALID_URL, url).groups() mobj = re.search(self._VALID_URL, url)
video_id = mobj.group("id")
webpage = self._download_webpage(url, video_id)
title = self._og_search_title(webpage)
return { return {
'_type': 'url_transparent', '_type': 'url_transparent',
'url': 'http://players.brightcove.net/1027729757001/default_default/index.html?videoId=%s' % video_id, 'url': 'https://www.youtube.com/watch?v=%s' % video_id,
'id': video_id, 'id': video_id,
'display_id': display_id, 'title': title,
'ie_key': 'BrightcoveNew',
} }

View File

@ -271,7 +271,10 @@ from .daum import (
DaumPlaylistIE, DaumPlaylistIE,
DaumUserIE, DaumUserIE,
) )
from .dbtv import DBTVIE from .dbtv import (
DBTVIE,
DBYTIE,
)
from .dctp import DctpTvIE from .dctp import DctpTvIE
from .deezer import DeezerPlaylistIE from .deezer import DeezerPlaylistIE
from .democracynow import DemocracynowIE from .democracynow import DemocracynowIE