]> jfr.im git - yt-dlp.git/commitdiff
[ie/commonmistakes] Raise error on blob URLs (#9897)
authorsepro <redacted>
Fri, 10 May 2024 17:20:55 +0000 (19:20 +0200)
committerGitHub <redacted>
Fri, 10 May 2024 17:20:55 +0000 (19:20 +0200)
Authored by: seproDev

yt_dlp/extractor/_extractors.py
yt_dlp/extractor/commonmistakes.py

index 42034275b9de54904613cbf6ba2ad8a6b31ea89d..1f095c932ae53bdc893499c3e858d6e94447def9 100644 (file)
     ComedyCentralIE,
     ComedyCentralTVIE,
 )
-from .commonmistakes import CommonMistakesIE, UnicodeBOMIE
+from .commonmistakes import (
+    BlobIE,
+    CommonMistakesIE,
+    UnicodeBOMIE,
+)
 from .commonprotocols import (
     MmsIE,
     RtmpIE,
index 1d3b61c732fbee3f92e772654ebf406520b2522a..4514424e8e410a556ebeb1e3fc3f77612915f3a1 100644 (file)
@@ -40,3 +40,19 @@ def _real_extract(self, url):
             'Your URL starts with a Byte Order Mark (BOM). '
             'Removing the BOM and looking for "%s" ...' % real_url)
         return self.url_result(real_url)
+
+
+class BlobIE(InfoExtractor):
+    IE_DESC = False
+    _VALID_URL = r'blob:'
+
+    _TESTS = [{
+        'url': 'blob:https://www.youtube.com/4eb3d090-a761-46e6-8083-c32016a36e3b',
+        'only_matching': True,
+    }]
+
+    def _real_extract(self, url):
+        raise ExtractorError(
+            'You\'ve asked yt-dlp to download a blob URL. '
+            'A blob URL exists only locally in your browser. '
+            'It is not possible for yt-dlp to access it.', expected=True)