youtube-dl

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

nuevo.py (1209B)


      1 # coding: utf-8
      2 from __future__ import unicode_literals
      3 
      4 from .common import InfoExtractor
      5 
      6 from ..utils import (
      7     float_or_none,
      8     xpath_text
      9 )
     10 
     11 
     12 class NuevoBaseIE(InfoExtractor):
     13     def _extract_nuevo(self, config_url, video_id, headers={}):
     14         config = self._download_xml(
     15             config_url, video_id, transform_source=lambda s: s.strip(),
     16             headers=headers)
     17 
     18         title = xpath_text(config, './title', 'title', fatal=True).strip()
     19         video_id = xpath_text(config, './mediaid', default=video_id)
     20         thumbnail = xpath_text(config, ['./image', './thumb'])
     21         duration = float_or_none(xpath_text(config, './duration'))
     22 
     23         formats = []
     24         for element_name, format_id in (('file', 'sd'), ('filehd', 'hd')):
     25             video_url = xpath_text(config, element_name)
     26             if video_url:
     27                 formats.append({
     28                     'url': video_url,
     29                     'format_id': format_id,
     30                 })
     31         self._check_formats(formats, video_id)
     32 
     33         return {
     34             'id': video_id,
     35             'title': title,
     36             'thumbnail': thumbnail,
     37             'duration': duration,
     38             'formats': formats
     39         }