| 
									
										
										
										
											2014-01-22 02:01:23 +01:00
										 |  |  | from __future__ import unicode_literals | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-26 15:25:53 +05:00
										 |  |  | from .common import InfoExtractor | 
					
						
							| 
									
										
										
										
											2014-04-03 20:44:51 +02:00
										 |  |  | from .youtube import YoutubeIE | 
					
						
							| 
									
										
										
										
											2013-06-26 15:25:53 +05:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class WimpIE(InfoExtractor): | 
					
						
							| 
									
										
										
										
											2016-03-21 21:36:32 +06:00
										 |  |  |     _VALID_URL = r'https?://(?:www\.)?wimp\.com/(?P<id>[^/]+)' | 
					
						
							| 
									
										
										
										
											2014-04-03 20:44:51 +02:00
										 |  |  |     _TESTS = [{ | 
					
						
							| 
									
										
										
										
											2014-02-21 17:57:19 +07:00
										 |  |  |         'url': 'http://www.wimp.com/maruexhausted/', | 
					
						
							| 
									
										
										
										
											2015-09-07 12:49:59 +01:00
										 |  |  |         'md5': 'ee21217ffd66d058e8b16be340b74883', | 
					
						
							| 
									
										
										
										
											2014-01-22 02:01:23 +01:00
										 |  |  |         'info_dict': { | 
					
						
							| 
									
										
										
										
											2014-02-21 17:57:19 +07:00
										 |  |  |             'id': 'maruexhausted', | 
					
						
							| 
									
										
										
										
											2015-09-07 12:49:59 +01:00
										 |  |  |             'ext': 'mp4', | 
					
						
							| 
									
										
										
										
											2014-02-21 17:57:19 +07:00
										 |  |  |             'title': 'Maru is exhausted.', | 
					
						
							|  |  |  |             'description': 'md5:57e099e857c0a4ea312542b684a869b8', | 
					
						
							| 
									
										
										
										
											2013-06-27 20:46:46 +02:00
										 |  |  |         } | 
					
						
							| 
									
										
										
										
											2014-04-03 20:44:51 +02:00
										 |  |  |     }, { | 
					
						
							|  |  |  |         'url': 'http://www.wimp.com/clowncar/', | 
					
						
							| 
									
										
										
										
											2015-09-07 12:49:59 +01:00
										 |  |  |         'md5': '4e2986c793694b55b37cf92521d12bb4', | 
					
						
							| 
									
										
										
										
											2014-04-03 20:44:51 +02:00
										 |  |  |         'info_dict': { | 
					
						
							| 
									
										
										
										
											2015-09-07 12:49:59 +01:00
										 |  |  |             'id': 'clowncar', | 
					
						
							| 
									
										
										
										
											2016-03-05 21:52:24 +01:00
										 |  |  |             'ext': 'webm', | 
					
						
							| 
									
										
										
										
											2015-09-07 12:49:59 +01:00
										 |  |  |             'title': 'It\'s like a clown car.', | 
					
						
							|  |  |  |             'description': 'md5:0e56db1370a6e49c5c1d19124c0d2fb2', | 
					
						
							| 
									
										
										
										
											2014-04-03 20:44:51 +02:00
										 |  |  |         }, | 
					
						
							|  |  |  |     }] | 
					
						
							| 
									
										
										
										
											2013-06-26 15:25:53 +05:00
										 |  |  | 
 | 
					
						
							|  |  |  |     def _real_extract(self, url): | 
					
						
							| 
									
										
										
										
											2015-09-07 12:49:59 +01:00
										 |  |  |         video_id = self._match_id(url) | 
					
						
							| 
									
										
										
										
											2015-12-07 22:14:45 +06:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-26 15:25:53 +05:00
										 |  |  |         webpage = self._download_webpage(url, video_id) | 
					
						
							| 
									
										
										
										
											2015-12-07 22:14:45 +06:00
										 |  |  | 
 | 
					
						
							|  |  |  |         youtube_id = self._search_regex( | 
					
						
							|  |  |  |             r"videoId\s*:\s*[\"']([0-9A-Za-z_-]{11})[\"']", | 
					
						
							|  |  |  |             webpage, 'video URL', default=None) | 
					
						
							|  |  |  |         if youtube_id: | 
					
						
							| 
									
										
										
										
											2014-04-03 20:44:51 +02:00
										 |  |  |             return { | 
					
						
							|  |  |  |                 '_type': 'url', | 
					
						
							| 
									
										
										
										
											2015-12-07 22:14:45 +06:00
										 |  |  |                 'url': youtube_id, | 
					
						
							| 
									
										
										
										
											2014-04-03 20:44:51 +02:00
										 |  |  |                 'ie_key': YoutubeIE.ie_key(), | 
					
						
							|  |  |  |             } | 
					
						
							| 
									
										
										
										
											2013-06-26 17:26:59 +05:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-12-07 22:14:45 +06:00
										 |  |  |         video_url = self._search_regex( | 
					
						
							| 
									
										
										
										
											2015-12-07 22:18:00 +06:00
										 |  |  |             r'<video[^>]+>\s*<source[^>]+src=(["\'])(?P<url>.+?)\1', | 
					
						
							| 
									
										
										
										
											2015-12-07 22:14:45 +06:00
										 |  |  |             webpage, 'video URL', group='url') | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-12-08 07:22:19 +01:00
										 |  |  |         return { | 
					
						
							|  |  |  |             'id': video_id, | 
					
						
							| 
									
										
										
										
											2014-01-22 02:01:23 +01:00
										 |  |  |             'url': video_url, | 
					
						
							| 
									
										
										
										
											2013-12-08 07:22:19 +01:00
										 |  |  |             'title': self._og_search_title(webpage), | 
					
						
							|  |  |  |             'thumbnail': self._og_search_thumbnail(webpage), | 
					
						
							|  |  |  |             'description': self._og_search_description(webpage), | 
					
						
							| 
									
										
										
										
											2014-04-03 20:44:51 +02:00
										 |  |  |         } |