Sfoglia il codice sorgente

[extractor/common] Recognize Indian censorship (#5021)

Philipp Hagemeister 10 anni fa
parent
commit
77b2986b5b
1 ha cambiato i file con 10 aggiunte e 0 eliminazioni
  1. 10 0
      youtube_dl/extractor/common.py

+ 10 - 0
youtube_dl/extractor/common.py

@@ -391,6 +391,16 @@ class InfoExtractor(object):
             if blocked_iframe:
                 msg += ' Visit %s for more details' % blocked_iframe
             raise ExtractorError(msg, expected=True)
+        if '<title>The URL you requested has been blocked</title>' in content[:512]:
+            msg = (
+                'Access to this webpage has been blocked by Indian censorship. '
+                'Use a VPN or proxy server (with --proxy) to route around it.')
+            block_msg = self._html_search_regex(
+                r'</h1><p>(.*?)</p>',
+                content, 'block message', default=None)
+            if block_msg:
+                msg += ' (Message: "%s")' % block_msg.replace('\n', ' ')
+            raise ExtractorError(msg, expected=True)
 
         return content