|
|
|
@ -9,7 +9,18 @@ from ..utils import float_or_none
|
|
|
|
|
|
|
|
|
|
class VGTVIE(InfoExtractor):
|
|
|
|
|
IE_DESC = 'VGTV and BTTV'
|
|
|
|
|
_VALID_URL = r'http://(?:www\.)?(?P<host>vgtv|bt)\.no/(?:(?:tv/)?#!/(?:video|live)/(?P<id>[0-9]+)|(?:[^/]+/)*(?P<path>[^/]+))'
|
|
|
|
|
_VALID_URL = r'''(?x)
|
|
|
|
|
(?:
|
|
|
|
|
vgtv:|
|
|
|
|
|
http://(?:www\.)?
|
|
|
|
|
)
|
|
|
|
|
(?P<host>vgtv|bt)
|
|
|
|
|
(?:
|
|
|
|
|
:|
|
|
|
|
|
\.no/(?:tv/)?#!/(?:video|live)/
|
|
|
|
|
)
|
|
|
|
|
(?P<id>[0-9]+)
|
|
|
|
|
'''
|
|
|
|
|
_TESTS = [
|
|
|
|
|
{
|
|
|
|
|
# streamType: vod
|
|
|
|
@ -129,3 +140,29 @@ class VGTVIE(InfoExtractor):
|
|
|
|
|
'view_count': data['displays'],
|
|
|
|
|
'formats': formats,
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class BTArticleIE(InfoExtractor):
|
|
|
|
|
IE_DESC = 'Bergens Tidende'
|
|
|
|
|
_VALID_URL = 'http://(?:www\.)?bt\.no/(?:[^/]+/)+(?P<id>[^/]+)-\d+\.html'
|
|
|
|
|
_TEST = {
|
|
|
|
|
'url': 'http://www.bt.no/nyheter/lokalt/Kjemper-for-internatet-1788214.html',
|
|
|
|
|
'md5': 'd055e8ee918ef2844745fcfd1a4175fb',
|
|
|
|
|
'info_dict': {
|
|
|
|
|
'id': '23199',
|
|
|
|
|
'ext': 'mp4',
|
|
|
|
|
'title': 'Alrekstad internat',
|
|
|
|
|
'description': 'md5:dc81a9056c874fedb62fc48a300dac58',
|
|
|
|
|
'thumbnail': 're:^https?://.*\.jpg',
|
|
|
|
|
'duration': 191,
|
|
|
|
|
'timestamp': 1289991323,
|
|
|
|
|
'upload_date': '20101117',
|
|
|
|
|
'view_count': int,
|
|
|
|
|
},
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
def _real_extract(self, url):
|
|
|
|
|
webpage = self._download_webpage(url, self._match_id(url))
|
|
|
|
|
video_id = self._search_regex(
|
|
|
|
|
r'SVP\.Player\.load\(\s*(\d+)', webpage, 'video id')
|
|
|
|
|
return self.url_result('vgtv:bt:%s' % video_id, 'VGTV')
|
|
|
|
|