Browse Source

[DBTV:generic] Add support for embeds

master
Déstin Reed 8 years ago
committed by Sergey M․
parent
commit
b0c8f2e9c8
No known key found for this signature in database GPG Key ID: 2C393E0F18A9236D
2 changed files with 17 additions and 0 deletions
  1. 6
      youtube_dl/extractor/dbtv.py
  2. 11
      youtube_dl/extractor/generic.py

6
youtube_dl/extractor/dbtv.py

@ -38,6 +38,12 @@ class DBTVIE(InfoExtractor):
'only_matching': True, 'only_matching': True,
}] }]
@staticmethod
def _extract_urls(webpage):
return [url for _, url in re.findall(
r'<iframe[^>]+src=(["\'])((?:https?:)?//(?:www\.)?dbtv\.no/lazyplayer/\d+.*?)\1',
webpage)]
def _real_extract(self, url): def _real_extract(self, url):
video_id, display_id = re.match(self._VALID_URL, url).groups() video_id, display_id = re.match(self._VALID_URL, url).groups()

11
youtube_dl/extractor/generic.py

@ -73,6 +73,7 @@ from .eagleplatform import EaglePlatformIE
from .facebook import FacebookIE from .facebook import FacebookIE
from .soundcloud import SoundcloudIE from .soundcloud import SoundcloudIE
from .vbox7 import Vbox7IE from .vbox7 import Vbox7IE
from .dbtv import DBTVIE
class GenericIE(InfoExtractor): class GenericIE(InfoExtractor):
@ -1386,6 +1387,11 @@ class GenericIE(InfoExtractor):
}, },
'add_ie': [Vbox7IE.ie_key()], 'add_ie': [Vbox7IE.ie_key()],
}, },
{
# DBTV embeds
'url': 'http://www.dagbladet.no/2016/02/23/nyheter/nordlys/ski/troms/ver/43254897/',
'playlist_mincount': 3,
},
# { # {
# # TODO: find another test # # TODO: find another test
# # http://schema.org/VideoObject # # http://schema.org/VideoObject
@ -2257,6 +2263,11 @@ class GenericIE(InfoExtractor):
if vbox7_url: if vbox7_url:
return self.url_result(vbox7_url, Vbox7IE.ie_key()) return self.url_result(vbox7_url, Vbox7IE.ie_key())
# Look for DBTV embeds
dbtv_urls = DBTVIE._extract_urls(webpage)
if dbtv_urls:
return _playlist_from_matches(dbtv_urls, ie=DBTVIE.ie_key())
# Looking for http://schema.org/VideoObject # Looking for http://schema.org/VideoObject
json_ld = self._search_json_ld( json_ld = self._search_json_ld(
webpage, video_id, default={}, expected_type='VideoObject') webpage, video_id, default={}, expected_type='VideoObject')

Loading…
Cancel
Save