[nrktv] Rework subtitles and eliminate downloading twice
This commit is contained in:
		
							parent
							
								
									6751a1284d
								
							
						
					
					
						commit
						2b3f951a2e
					
				| @ -4,6 +4,7 @@ from __future__ import unicode_literals | ||||
| import re | ||||
| 
 | ||||
| from .common import InfoExtractor | ||||
| from ..compat import compat_urlparse | ||||
| from ..utils import ( | ||||
|     ExtractorError, | ||||
|     float_or_none, | ||||
| @ -196,20 +197,6 @@ class NRKTVIE(InfoExtractor): | ||||
|         } | ||||
|     ] | ||||
| 
 | ||||
|     def _debug_print(self, txt): | ||||
|         if self._downloader.params.get('verbose', False): | ||||
|             self.to_screen('[debug] %s' % txt) | ||||
| 
 | ||||
|     def _get_subtitles(self, subtitlesurl, video_id, baseurl): | ||||
|         url = "%s%s" % (baseurl, subtitlesurl) | ||||
|         self._debug_print('%s: Subtitle url: %s' % (video_id, url)) | ||||
|         captions = self._download_xml( | ||||
|             url, video_id, 'Downloading subtitles') | ||||
|         lang = captions.get('lang', 'no') | ||||
|         return {lang: [ | ||||
|             {'ext': 'ttml', 'url': url}, | ||||
|         ]} | ||||
| 
 | ||||
|     def _extract_f4m(self, manifest_url, video_id): | ||||
|         return self._extract_f4m_formats( | ||||
|             manifest_url + '?hdcore=3.1.1&plugin=aasp-3.1.1.69.124', video_id, f4m_id='hds') | ||||
| @ -218,7 +205,7 @@ class NRKTVIE(InfoExtractor): | ||||
|         mobj = re.match(self._VALID_URL, url) | ||||
|         video_id = mobj.group('id') | ||||
|         part_id = mobj.group('part_id') | ||||
|         baseurl = mobj.group('baseurl') | ||||
|         base_url = mobj.group('baseurl') | ||||
| 
 | ||||
|         webpage = self._download_webpage(url, video_id) | ||||
| 
 | ||||
| @ -278,11 +265,14 @@ class NRKTVIE(InfoExtractor): | ||||
|         self._sort_formats(formats) | ||||
| 
 | ||||
|         subtitles_url = self._html_search_regex( | ||||
|             r'data-subtitlesurl[ ]*=[ ]*"([^"]+)"', | ||||
|             webpage, 'subtitle URL', default=None) | ||||
|         subtitles = None | ||||
|             r'data-subtitlesurl\s*=\s*(["\'])(?P<url>.+?)\1', | ||||
|             webpage, 'subtitle URL', default=None, group='url') | ||||
|         subtitles = {} | ||||
|         if subtitles_url: | ||||
|             subtitles = self.extract_subtitles(subtitles_url, video_id, baseurl) | ||||
|             subtitles['no'] = [{ | ||||
|                 'ext': 'ttml', | ||||
|                 'url': compat_urlparse.urljoin(base_url, subtitles_url), | ||||
|             }] | ||||
| 
 | ||||
|         return { | ||||
|             'id': video_id, | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user