youtube-dl

Another place where youtube-dl lives on
git clone git://git.oshgnacknak.de/youtube-dl.git
Log | Files | Refs | README | LICENSE

oktoberfesttv.py (1504B)


      1 # coding: utf-8
      2 from __future__ import unicode_literals
      3 
      4 from .common import InfoExtractor
      5 
      6 
      7 class OktoberfestTVIE(InfoExtractor):
      8     _VALID_URL = r'https?://(?:www\.)?oktoberfest-tv\.de/[^/]+/[^/]+/video/(?P<id>[^/?#]+)'
      9 
     10     _TEST = {
     11         'url': 'http://www.oktoberfest-tv.de/de/kameras/video/hb-zelt',
     12         'info_dict': {
     13             'id': 'hb-zelt',
     14             'ext': 'mp4',
     15             'title': 're:^Live-Kamera: Hofbräuzelt [0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}$',
     16             'thumbnail': r're:^https?://.*\.jpg$',
     17             'is_live': True,
     18         },
     19         'params': {
     20             'skip_download': True,
     21         }
     22     }
     23 
     24     def _real_extract(self, url):
     25         video_id = self._match_id(url)
     26         webpage = self._download_webpage(url, video_id)
     27 
     28         title = self._live_title(self._html_search_regex(
     29             r'<h1><strong>.*?</strong>(.*?)</h1>', webpage, 'title'))
     30 
     31         clip = self._search_regex(
     32             r"clip:\s*\{\s*url:\s*'([^']+)'", webpage, 'clip')
     33         ncurl = self._search_regex(
     34             r"netConnectionUrl:\s*'([^']+)'", webpage, 'rtmp base')
     35         video_url = ncurl + clip
     36         thumbnail = self._search_regex(
     37             r"canvas:\s*\{\s*backgroundImage:\s*'url\(([^)]+)\)'", webpage,
     38             'thumbnail', fatal=False)
     39 
     40         return {
     41             'id': video_id,
     42             'title': title,
     43             'url': video_url,
     44             'ext': 'mp4',
     45             'is_live': True,
     46             'thumbnail': thumbnail,
     47         }