| 
									
										
										
										
											2016-10-02 13:39:18 +02:00
										 |  |  | # coding: utf-8 | 
					
						
							| 
									
										
										
										
											2015-12-02 06:00:47 +02:00
										 |  |  | from __future__ import unicode_literals | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | from .common import InfoExtractor | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | from ..utils import ( | 
					
						
							|  |  |  |     float_or_none, | 
					
						
							|  |  |  |     xpath_text | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class NuevoBaseIE(InfoExtractor): | 
					
						
							| 
									
										
										
										
											2017-05-08 20:03:38 +07:00
										 |  |  |     def _extract_nuevo(self, config_url, video_id, headers={}): | 
					
						
							| 
									
										
										
										
											2016-01-23 00:04:33 +06:00
										 |  |  |         config = self._download_xml( | 
					
						
							| 
									
										
										
										
											2017-05-08 20:03:38 +07:00
										 |  |  |             config_url, video_id, transform_source=lambda s: s.strip(), | 
					
						
							|  |  |  |             headers=headers) | 
					
						
							| 
									
										
										
										
											2015-12-02 06:00:47 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-01-23 00:04:33 +06:00
										 |  |  |         title = xpath_text(config, './title', 'title', fatal=True).strip() | 
					
						
							|  |  |  |         video_id = xpath_text(config, './mediaid', default=video_id) | 
					
						
							| 
									
										
										
										
											2016-01-23 00:38:58 +06:00
										 |  |  |         thumbnail = xpath_text(config, ['./image', './thumb']) | 
					
						
							| 
									
										
										
										
											2016-01-23 00:04:33 +06:00
										 |  |  |         duration = float_or_none(xpath_text(config, './duration')) | 
					
						
							| 
									
										
										
										
											2015-12-02 06:00:47 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |         formats = [] | 
					
						
							|  |  |  |         for element_name, format_id in (('file', 'sd'), ('filehd', 'hd')): | 
					
						
							| 
									
										
										
										
											2016-01-23 00:04:33 +06:00
										 |  |  |             video_url = xpath_text(config, element_name) | 
					
						
							|  |  |  |             if video_url: | 
					
						
							|  |  |  |                 formats.append({ | 
					
						
							|  |  |  |                     'url': video_url, | 
					
						
							|  |  |  |                     'format_id': format_id, | 
					
						
							|  |  |  |                 }) | 
					
						
							|  |  |  |         self._check_formats(formats, video_id) | 
					
						
							| 
									
										
										
										
											2015-12-02 06:00:47 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |         return { | 
					
						
							|  |  |  |             'id': video_id, | 
					
						
							|  |  |  |             'title': title, | 
					
						
							|  |  |  |             'thumbnail': thumbnail, | 
					
						
							|  |  |  |             'duration': duration, | 
					
						
							|  |  |  |             'formats': formats | 
					
						
							|  |  |  |         } |