[brightcove] raise ExtractorError on 403 errors and fix regex to work with tenplay
This commit is contained in:
		
							parent
							
								
									744daf9418
								
							
						
					
					
						commit
						d13bdc3824
					
				| @ -13,6 +13,7 @@ from ..compat import ( | ||||
|     compat_urllib_parse_urlparse, | ||||
|     compat_urlparse, | ||||
|     compat_xml_parse_error, | ||||
|     compat_HTTPError, | ||||
| ) | ||||
| from ..utils import ( | ||||
|     determine_ext, | ||||
| @ -424,7 +425,7 @@ class BrightcoveNewIE(InfoExtractor): | ||||
|                     </video>.*? | ||||
|                     <script[^>]+ | ||||
|                         src=["\'](?:https?:)?//players\.brightcove\.net/ | ||||
|                         (\d+)/([\da-f-]+)_([^/]+)/index\.min\.js | ||||
|                         (\d+)/([\da-f-]+)_([^/]+)/index(?:\.min)?\.js | ||||
|                 ''', webpage): | ||||
|             entries.append( | ||||
|                 'http://players.brightcove.net/%s/%s_%s/index.html?videoId=%s' | ||||
| @ -458,7 +459,13 @@ class BrightcoveNewIE(InfoExtractor): | ||||
|             'https://edge.api.brightcove.com/playback/v1/accounts/%s/videos/%s' | ||||
|             % (account_id, video_id), | ||||
|             headers={'Accept': 'application/json;pk=%s' % policy_key}) | ||||
|         try: | ||||
|             json_data = self._download_json(req, video_id) | ||||
|         except ExtractorError as e: | ||||
|             if isinstance(e.cause, compat_HTTPError) and e.cause.code == 403: | ||||
|                 json_data = self._parse_json(e.cause.read().decode(), video_id) | ||||
|                 raise ExtractorError(json_data[0]['message'], expected=True) | ||||
|             raise | ||||
| 
 | ||||
|         title = json_data['name'] | ||||
| 
 | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user