2015-12-31 12:02:33 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								# coding: utf-8  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								from  __future__  import  unicode_literals  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-20 15:52:23 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								from  . adobepass  import  AdobePassIE  
						 
					
						
							
								
									
										
										
										
											2016-08-06 20:53:13 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								from  . . utils  import  (  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    smuggle_url , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    update_url_query , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								)  
						 
					
						
							
								
									
										
										
										
											2015-12-31 12:02:33 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-20 15:52:23 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								class  FOXIE ( AdobePassIE ) :  
						 
					
						
							
								
									
										
										
										
											2015-12-31 12:02:33 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    _VALID_URL  =  r ' https?://(?:www \ .)?fox \ .com/watch/(?P<id>[0-9]+) ' 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    _TEST  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ' url ' :  ' http://www.fox.com/watch/255180355939/7684182528 ' , 
							 
						 
					
						
							
								
									
										
										
										
											2016-02-09 17:30:42 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        ' md5 ' :  ' ebd296fcc41dd4b19f8115d8461a3165 ' , 
							 
						 
					
						
							
								
									
										
										
										
											2015-12-31 12:02:33 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        ' info_dict ' :  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ' id ' :  ' 255180355939 ' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ' ext ' :  ' mp4 ' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ' title ' :  ' Official Trailer: Gotham ' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ' description ' :  ' Tracing the rise of the great DC Comics Super-Villains and vigilantes, Gotham reveals an entirely new chapter that has never been told. ' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ' duration ' :  129 , 
							 
						 
					
						
							
								
									
										
										
										
											2016-04-01 18:06:11 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            ' timestamp ' :  1400020798 , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ' upload_date ' :  ' 20140513 ' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ' uploader ' :  ' NEWA-FNG-FOXCOM ' , 
							 
						 
					
						
							
								
									
										
										
										
											2015-12-31 12:02:33 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ' add_ie ' :  [ ' ThePlatform ' ] , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    def  _real_extract ( self ,  url ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        video_id  =  self . _match_id ( url ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        webpage  =  self . _download_webpage ( url ,  video_id ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-20 15:52:23 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        settings  =  self . _parse_json ( self . _search_regex ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            r ' jQuery \ .extend \ (Drupal \ .settings \ s*, \ s*( { .+?}) \ ); ' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            webpage ,  ' drupal settings ' ) ,  video_id ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        fox_pdk_player  =  settings [ ' fox_pdk_player ' ] 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        release_url  =  fox_pdk_player [ ' release_url ' ] 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        query  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ' mbr ' :  ' true ' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ' switch ' :  ' http ' 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        if  fox_pdk_player . get ( ' access ' )  ==  ' locked ' : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ap_p  =  settings [ ' foxAdobePassProvider ' ] 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            rating  =  ap_p . get ( ' videoRating ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            if  rating  ==  ' n/a ' : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                rating  =  None 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            resource  =  self . _get_mvpd_resource ( ' fbc-fox ' ,  None ,  ap_p [ ' videoGUID ' ] ,  rating ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            query [ ' auth ' ]  =  self . _extract_mvpd_auth ( url ,  video_id ,  ' fbc-fox ' ,  resource ) 
							 
						 
					
						
							
								
									
										
										
										
											2015-12-31 12:02:33 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ' _type ' :  ' url_transparent ' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ' ie_key ' :  ' ThePlatform ' , 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-20 15:52:23 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            ' url ' :  smuggle_url ( update_url_query ( release_url ,  query ) ,  { ' force_smil_url ' :  True } ) , 
							 
						 
					
						
							
								
									
										
										
										
											2015-12-31 12:02:33 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								            ' id ' :  video_id , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }