diff options
Diffstat (limited to 'youtube_dl/YoutubeDL.py')
| -rwxr-xr-x | youtube_dl/YoutubeDL.py | 12 | 
1 files changed, 10 insertions, 2 deletions
| diff --git a/youtube_dl/YoutubeDL.py b/youtube_dl/YoutubeDL.py index b5ef5e009..ce4b72fd3 100755 --- a/youtube_dl/YoutubeDL.py +++ b/youtube_dl/YoutubeDL.py @@ -1701,10 +1701,10 @@ class YoutubeDL(object):              out = out.decode().strip()              if re.match('[0-9a-f]+', out):                  self._write_string('[debug] Git HEAD: ' + out + '\n') -        except: +        except Exception:              try:                  sys.exc_clear() -            except: +            except Exception:                  pass          self._write_string('[debug] Python version %s - %s\n' % (              platform.python_version(), platform_name())) @@ -1768,6 +1768,14 @@ class YoutubeDL(object):          debuglevel = 1 if self.params.get('debug_printtraffic') else 0          https_handler = make_HTTPS_handler(self.params, debuglevel=debuglevel) +        # The ssl context is only available in python 2.7.9 and 3.x +        if hasattr(https_handler, '_context'): +            ctx = https_handler._context +            # get_ca_certs is unavailable prior to python 3.4 +            if hasattr(ctx, 'get_ca_certs') and len(ctx.get_ca_certs()) == 0: +                self.report_warning( +                    'No ssl certificates were loaded, urls that use https ' +                    'won\'t work')          ydlh = YoutubeDLHandler(self.params, debuglevel=debuglevel)          opener = compat_urllib_request.build_opener(              proxy_handler, https_handler, cookie_processor, ydlh) | 
