| 
									
										
										
										
											2014-08-27 01:03:31 +02:00
										 |  |  | from __future__ import unicode_literals | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-17 05:45:49 +07:00
										 |  |  | from ..utils import ( | 
					
						
							|  |  |  |     int_or_none, | 
					
						
							|  |  |  |     str_to_int, | 
					
						
							|  |  |  |     unified_strdate, | 
					
						
							| 
									
										
										
										
											2013-10-28 18:18:58 +01:00
										 |  |  | ) | 
					
						
							| 
									
										
										
										
											2016-08-17 05:45:49 +07:00
										 |  |  | from .keezmovies import KeezMoviesIE | 
					
						
							| 
									
										
										
										
											2013-10-28 18:18:58 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-08-27 01:03:31 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-17 05:45:49 +07:00
										 |  |  | class MofosexIE(KeezMoviesIE): | 
					
						
							|  |  |  |     _VALID_URL = r'https?://(?:www\.)?mofosex\.com/videos/(?P<id>\d+)/(?P<display_id>[^/?#&.]+)\.html' | 
					
						
							|  |  |  |     _TESTS = [{ | 
					
						
							|  |  |  |         'url': 'http://www.mofosex.com/videos/318131/amateur-teen-playing-and-masturbating-318131.html', | 
					
						
							| 
									
										
										
										
											2018-04-19 22:38:31 +07:00
										 |  |  |         'md5': '558fcdafbb63a87c019218d6e49daf8a', | 
					
						
							| 
									
										
										
										
											2014-08-27 01:03:31 +02:00
										 |  |  |         'info_dict': { | 
					
						
							| 
									
										
										
										
											2016-08-17 05:45:49 +07:00
										 |  |  |             'id': '318131', | 
					
						
							|  |  |  |             'display_id': 'amateur-teen-playing-and-masturbating-318131', | 
					
						
							| 
									
										
										
										
											2014-08-27 01:03:31 +02:00
										 |  |  |             'ext': 'mp4', | 
					
						
							| 
									
										
										
										
											2016-08-17 05:45:49 +07:00
										 |  |  |             'title': 'amateur teen playing and masturbating', | 
					
						
							| 
									
										
										
										
											2017-01-02 20:08:07 +08:00
										 |  |  |             'thumbnail': r're:^https?://.*\.jpg$', | 
					
						
							| 
									
										
										
										
											2016-08-17 05:45:49 +07:00
										 |  |  |             'upload_date': '20121114', | 
					
						
							|  |  |  |             'view_count': int, | 
					
						
							|  |  |  |             'like_count': int, | 
					
						
							|  |  |  |             'dislike_count': int, | 
					
						
							| 
									
										
										
										
											2014-08-27 01:03:31 +02:00
										 |  |  |             'age_limit': 18, | 
					
						
							| 
									
										
										
										
											2013-10-28 18:18:58 +01:00
										 |  |  |         } | 
					
						
							| 
									
										
										
										
											2016-08-17 05:45:49 +07:00
										 |  |  |     }, { | 
					
						
							|  |  |  |         # This video is no longer available | 
					
						
							|  |  |  |         'url': 'http://www.mofosex.com/videos/5018/japanese-teen-music-video.html', | 
					
						
							|  |  |  |         'only_matching': True, | 
					
						
							|  |  |  |     }] | 
					
						
							| 
									
										
										
										
											2013-10-28 18:18:58 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |     def _real_extract(self, url): | 
					
						
							| 
									
										
										
										
											2016-08-17 05:45:49 +07:00
										 |  |  |         webpage, info = self._extract_info(url) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         view_count = str_to_int(self._search_regex( | 
					
						
							|  |  |  |             r'VIEWS:</span>\s*([\d,.]+)', webpage, 'view count', fatal=False)) | 
					
						
							|  |  |  |         like_count = int_or_none(self._search_regex( | 
					
						
							|  |  |  |             r'id=["\']amountLikes["\'][^>]*>(\d+)', webpage, | 
					
						
							|  |  |  |             'like count', fatal=False)) | 
					
						
							|  |  |  |         dislike_count = int_or_none(self._search_regex( | 
					
						
							|  |  |  |             r'id=["\']amountDislikes["\'][^>]*>(\d+)', webpage, | 
					
						
							|  |  |  |             'like count', fatal=False)) | 
					
						
							|  |  |  |         upload_date = unified_strdate(self._html_search_regex( | 
					
						
							|  |  |  |             r'Added:</span>([^<]+)', webpage, 'upload date', fatal=False)) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         info.update({ | 
					
						
							|  |  |  |             'view_count': view_count, | 
					
						
							|  |  |  |             'like_count': like_count, | 
					
						
							|  |  |  |             'dislike_count': dislike_count, | 
					
						
							|  |  |  |             'upload_date': upload_date, | 
					
						
							|  |  |  |             'thumbnail': self._og_search_thumbnail(webpage), | 
					
						
							|  |  |  |         }) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         return info |