| 
									
										
										
										
											2013-08-22 13:54:23 +02:00
										 |  |  | # coding: utf-8 | 
					
						
							| 
									
										
										
										
											2014-02-22 14:27:09 +01:00
										 |  |  | from __future__ import unicode_literals | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-08-22 13:54:23 +02:00
										 |  |  | import re | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | from .common import InfoExtractor | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-08-27 10:35:20 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-08-22 13:54:23 +02:00
										 |  |  | class Canalc2IE(InfoExtractor): | 
					
						
							| 
									
										
										
										
											2013-09-10 12:13:22 +02:00
										 |  |  |     IE_NAME = 'canalc2.tv' | 
					
						
							| 
									
										
										
										
											2013-11-04 22:20:22 +01:00
										 |  |  |     _VALID_URL = r'http://.*?\.canalc2\.tv/video\.asp\?.*?idVideo=(?P<id>\d+)' | 
					
						
							| 
									
										
										
										
											2013-08-22 13:54:23 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |     _TEST = { | 
					
						
							| 
									
										
										
										
											2014-02-22 14:27:09 +01:00
										 |  |  |         'url': 'http://www.canalc2.tv/video.asp?idVideo=12163&voir=oui', | 
					
						
							|  |  |  |         'md5': '060158428b650f896c542dfbb3d6487f', | 
					
						
							|  |  |  |         'info_dict': { | 
					
						
							|  |  |  |             'id': '12163', | 
					
						
							|  |  |  |             'ext': 'mp4', | 
					
						
							|  |  |  |             'title': 'Terrasses du Numérique' | 
					
						
							| 
									
										
										
										
											2013-08-22 13:54:23 +02:00
										 |  |  |         } | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     def _real_extract(self, url): | 
					
						
							| 
									
										
										
										
											2013-11-04 22:20:22 +01:00
										 |  |  |         video_id = re.match(self._VALID_URL, url).group('id') | 
					
						
							|  |  |  |         # We need to set the voir field for getting the file name | 
					
						
							|  |  |  |         url = 'http://www.canalc2.tv/video.asp?idVideo=%s&voir=oui' % video_id | 
					
						
							| 
									
										
										
										
											2013-08-22 13:54:23 +02:00
										 |  |  |         webpage = self._download_webpage(url, video_id) | 
					
						
							| 
									
										
										
										
											2013-08-27 10:35:20 +02:00
										 |  |  |         file_name = self._search_regex( | 
					
						
							|  |  |  |             r"so\.addVariable\('file','(.*?)'\);", | 
					
						
							|  |  |  |             webpage, 'file name') | 
					
						
							| 
									
										
										
										
											2013-08-22 13:54:23 +02:00
										 |  |  |         video_url = 'http://vod-flash.u-strasbg.fr:8080/' + file_name | 
					
						
							| 
									
										
										
										
											2013-08-22 14:47:51 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-08-27 10:35:20 +02:00
										 |  |  |         title = self._html_search_regex( | 
					
						
							| 
									
										
										
										
											2014-02-22 14:27:09 +01:00
										 |  |  |             r'class="evenement8">(.*?)</a>', webpage, 'title') | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         return { | 
					
						
							|  |  |  |             'id': video_id, | 
					
						
							|  |  |  |             'ext': 'mp4', | 
					
						
							|  |  |  |             'url': video_url, | 
					
						
							|  |  |  |             'title': title, | 
					
						
							|  |  |  |         } |