[pbs] Improve geo restriction detection and use geo bypass mechanism
[youtube-dl] / youtube_dl / extractor / pbs.py
index 6baed773fc6bf741a69f1baf222148065ef169c4..64f47bae303addd16573a36348d61aa08c133dd7 100644 (file)
@@ -489,11 +489,12 @@ class PBSIE(InfoExtractor):
                 headers=self.geo_verification_headers())
 
             if redirect_info['status'] == 'error':
+                message = self._ERRORS.get(
+                    redirect_info['http_code'], redirect_info['message'])
+                if redirect_info['http_code'] == 403:
+                    self.raise_geo_restricted(msg=message, countries=['US'])
                 raise ExtractorError(
-                    '%s said: %s' % (
-                        self.IE_NAME,
-                        self._ERRORS.get(redirect_info['http_code'], redirect_info['message'])),
-                    expected=True)
+                    '%s said: %s' % (self.IE_NAME, message), expected=True)
 
             format_url = redirect_info.get('url')
             if not format_url: