title: Python SSLError, sslv3 alert handshake failure, for wallhaven.cc
body: <p>Python Version: 3.5.2</p>
  
  <p>OS: OS X 10.12</p>
  
  <p>OpenSSL Version: OpenSSL 1.1.0b  26 Sep 2016</p>
  
  <p>I'm trying to requests "<a href="https://alpha.wallhaven.cc" rel="nofollow">https://alpha.wallhaven.cc</a>".</p>
  
  <pre><code>import urllib.request
  init_page=urllib.request.urlopen("https://alpha.wallhaven.cc")
  </code></pre>
  
  <p>Then get</p>
  
  <pre><code>ssl.SSLError: [SSL: SSLV3_ALERT_HANDSHAKE_FAILURE] sslv3 alert handshake failure (_ssl.c:645)
  </code></pre>
  
  <p>and</p>
  
  <pre><code>During handling of the above exception, another exception occurred:
  ...
  urllib.error.URLError: &lt;urlopen error [SSL: SSLV3_ALERT_HANDSHAKE_FAILURE] sslv3 alert handshake failure (_ssl.c:645)&gt;
  </code></pre>
  
  <p>The following solutions don't work:</p>
  
  <pre><code>import requests.packages.urllib3.util.ssl_
  requests.packages.urllib3.util.ssl_.DEFAULT_CIPHERS='ALL'
  
  import ssl
  ssl._create_default_https_context = ssl._create_unverified_context
  
  import requests
  print(requests.get("https://alpha.wallhaven.cc",verify=False))
  </code></pre>
  
  <p>or change /APNSWrapper/connection.py line 131:</p>
  
  <pre><code>ssl_version = self.ssl_module.PROTOCOL_SSLv3,
  </code></pre>
  
  <p>into</p>
  
  <pre><code>ssl_version = self.ssl_module.PROTOCOL_TLSv1,
  </code></pre>
  
  <p>Then what is the problem? How to solve it?
  Thanks a lot!</p>