Quellcode durchsuchen

Don't set the global socket timeout

Use the timeout argument of the `OpenerDirector.open` method instead
Jaime Marquínez Ferrándiz vor 11 Jahren
Ursprung
Commit
19a41fc613
1 geänderte Dateien mit 2 neuen und 3 gelöschten Zeilen
  1. 2 3
      youtube_dl/YoutubeDL.py

+ 2 - 3
youtube_dl/YoutubeDL.py

@@ -1167,7 +1167,7 @@ class YoutubeDL(object):
 
     def urlopen(self, req):
         """ Start an HTTP download """
-        return self._opener.open(req)
+        return self._opener.open(req, timeout=self._socket_timeout)
 
     def print_debug_header(self):
         if not self.params.get('verbose'):
@@ -1198,7 +1198,7 @@ class YoutubeDL(object):
 
     def _setup_opener(self):
         timeout_val = self.params.get('socket_timeout')
-        timeout = 600 if timeout_val is None else float(timeout_val)
+        self._socket_timeout = 600 if timeout_val is None else float(timeout_val)
 
         opts_cookiefile = self.params.get('cookiefile')
         opts_proxy = self.params.get('proxy')
@@ -1239,4 +1239,3 @@ class YoutubeDL(object):
 
         # TODO remove this global modification
         compat_urllib_request.install_opener(opener)
-        socket.setdefaulttimeout(timeout)