]> jfr.im git - yt-dlp.git/blobdiff - yt_dlp/postprocessor/sponsorblock.py
[docs,cleanup] Some minor refactoring and improve docs
[yt-dlp.git] / yt_dlp / postprocessor / sponsorblock.py
index 6264d45c5d1944c45901a4aa7abd719e20b2f60a..7265a9de7cfe92e5765177491012cb704ba81cb0 100644 (file)
@@ -4,7 +4,7 @@
 
 from .ffmpeg import FFmpegPostProcessor
 from ..compat import compat_urllib_parse_urlencode, compat_HTTPError
-from ..utils import PostProcessingError, sanitized_Request
+from ..utils import PostProcessingError, network_exceptions, sanitized_Request
 
 
 class SponsorBlockPP(FFmpegPostProcessor):
@@ -88,9 +88,9 @@ def _get_json(self, url):
         self.write_debug(f'SponsorBlock query: {url}')
         try:
             rsp = self._downloader.urlopen(sanitized_Request(url))
-        except compat_HTTPError as e:
-            if e.code == 404:
+        except network_exceptions as e:
+            if isinstance(e, compat_HTTPError) and e.code == 404:
                 return []
-            raise PostProcessingError(f'Error communicating with SponsorBlock API - {e}')
+            raise PostProcessingError(f'Unable to communicate with SponsorBlock API - {e}')
 
         return json.loads(rsp.read().decode(rsp.info().get_param('charset') or 'utf-8'))