2014-02-02 12:52:47 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								from  __future__  import  unicode_literals  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-06-29 19:17:27 +05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								import  re  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								from  . common  import  InfoExtractor  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								class  TrailerAddictIE ( InfoExtractor ) :  
						 
					
						
							
								
									
										
										
										
											2014-02-04 10:13:51 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    _WORKING  =  False 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-24 10:43:44 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    _VALID_URL  =  r ' (?:http://)?(?:www \ .)?traileraddict \ .com/(?:trailer|clip)/(?P<movie>.+?)/(?P<trailer_name>.+) ' 
							 
						 
					
						
							
								
									
										
										
										
											2013-06-29 19:17:27 +05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    _TEST  =  { 
							 
						 
					
						
							
								
									
										
										
										
											2014-02-02 12:52:47 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        ' url ' :  ' http://www.traileraddict.com/trailer/prince-avalanche/trailer ' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ' md5 ' :  ' 41365557f3c8c397d091da510e73ceb4 ' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ' info_dict ' :  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ' id ' :  ' 76184 ' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ' ext ' :  ' mp4 ' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ' title ' :  ' Prince Avalanche Trailer ' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ' description ' :  ' Trailer for Prince Avalanche. \n \n Two highway road workers spend the summer of 1988 away from their city lives. The isolated landscape becomes a place of misadventure as the men find themselves at odds with each other and the women they left behind. ' , 
							 
						 
					
						
							
								
									
										
										
										
											2013-06-29 19:17:27 +05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    def  _real_extract ( self ,  url ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        mobj  =  re . match ( self . _VALID_URL ,  url ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-24 10:43:44 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        name  =  mobj . group ( ' movie ' )  +  ' / '  +  mobj . group ( ' trailer_name ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        webpage  =  self . _download_webpage ( url ,  name ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-24 02:33:48 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-06-29 19:17:27 +05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        title  =  self . _search_regex ( r ' <title>(.+?)</title> ' , 
							 
						 
					
						
							
								
									
										
										
										
											2014-11-23 21:39:15 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                                   webpage ,  ' video title ' ) . replace ( '  - Trailer Addict ' ,  ' ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-02-02 12:52:47 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        view_count_str  =  self . _search_regex ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            r ' <span class= " views_n " >([0-9,.]+)</span> ' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            webpage ,  ' view count ' ,  fatal = False ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        view_count  =  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            None  if  view_count_str  is  None 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            else  int ( view_count_str . replace ( ' , ' ,  ' ' ) ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        video_id  =  self . _search_regex ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            r ' <param \ s+name= " movie " \ s+value= " /emb/([0-9]+) " \ s*/> ' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            webpage ,  ' video id ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-12 19:00:19 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-07-24 02:33:48 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        # Presence of (no)watchplus function indicates HD quality is available 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        if  re . search ( r ' function (no)?watchplus() ' ,  webpage ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            fvar  =  " fvarhd " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        else : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            fvar  =  " fvar " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        info_url  =  " http://www.traileraddict.com/ %s .php?tid= %s "  %  ( fvar ,  str ( video_id ) ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-11-23 20:41:03 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        info_webpage  =  self . _download_webpage ( info_url ,  video_id ,  " Downloading the info webpage " ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-24 02:33:48 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-06-29 19:17:27 +05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        final_url  =  self . _search_regex ( r ' &fileurl=(.+) ' , 
							 
						 
					
						
							
								
									
										
										
										
											2014-11-23 21:39:15 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                                       info_webpage ,  ' Download url ' ) . replace ( ' %3F ' ,  ' ? ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-06-29 19:17:27 +05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        thumbnail_url  =  self . _search_regex ( r ' &image=(.+?)& ' , 
							 
						 
					
						
							
								
									
										
										
										
											2014-11-23 21:39:15 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                                           info_webpage ,  ' thumbnail url ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-02-02 12:52:47 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        description  =  self . _html_search_regex ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            r ' (?s)<div class= " synopsis " >.*?<div class= " movie_label_info " [^>]*>(.*?)</div> ' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            webpage ,  ' description ' ,  fatal = False ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ' id ' :  video_id , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ' url ' :  final_url , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ' title ' :  title , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ' thumbnail ' :  thumbnail_url , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ' description ' :  description , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ' view_count ' :  view_count , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }