Scikit-learn: рдлрд╝реЗрдЪ_рдХреИрд▓рд┐рдлрд╝реЛрд░реНрдирд┐рдпрд╛_рд╣рд╛рдЙрд╕рд┐рдВрдЧ () URLрддреНрд░реБрдЯрд┐:<urlopen error="" certificate_verify_failed="" certificate="" verify="" failed=""/>

рдХреЛ рдирд┐рд░реНрдорд┐рдд 25 рдирд╡ре░ 2017  ┬╖  12рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: scikit-learn/scikit-learn

рд╡рд┐рд╡рд░рдг

рдореИрдВ рдирдореВрдирд╛ рдбреЗрдЯрд╛ рд╕реЗрдЯ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП fetch_california_housing() рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде рд╣реВрдВред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХреА рд╕рдордп-рд╕реАрдорд╛ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдИ рд╣реИ?

рдЪрд░рдг/рдХреЛрдб рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП

рдкреНрд░рд┐рдВрдЯ ('рд╕реНрдХрд┐рдХрд┐рдЯ-рд▓рд░реНрди рд╡рд░реНрдЬрди {} рд╣реИред'ред рдлреЙрд░реНрдореЗрдЯ (sklearn.__version__))
sklearn.datasets рд╕реЗ fetch_california_houseing рдЖрдпрд╛рдд рдХрд░реЗрдВ
рдЖрд╡рд╛рд╕ = рдлрд╝реЗрдЪ_рдХреИрд▓рд┐рдлрд╝реЛрд░реНрдирд┐рдпрд╛_рд╣рд╛рдЙрд╕рд┐рдВрдЧ ()

рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкрд░рд┐рдгрд╛рдо

Downloading Cal. housing from https://ndownloader.figshare.com/files/5976036 to /Users/test/scikit_learn_data
The scikit-learn version is 0.19.1.
---------------------------------------------------------------------------
SSLError                                  Traceback (most recent call last)
/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/urllib/request.py in do_open(self, http_class, req, **http_conn_args)
   1317                 h.request(req.get_method(), req.selector, req.data, headers,
-> 1318                           encode_chunked=req.has_header('Transfer-encoding'))
   1319             except OSError as err: # timeout error

/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/http/client.py in request(self, method, url, body, headers, encode_chunked)
   1238         """Send a complete request to the server."""
-> 1239         self._send_request(method, url, body, headers, encode_chunked)
   1240 

/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/http/client.py in _send_request(self, method, url, body, headers, encode_chunked)
   1284             body = _encode(body, 'body')
-> 1285         self.endheaders(body, encode_chunked=encode_chunked)
   1286 

/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/http/client.py in endheaders(self, message_body, encode_chunked)
   1233             raise CannotSendHeader()
-> 1234         self._send_output(message_body, encode_chunked=encode_chunked)
   1235 

/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/http/client.py in _send_output(self, message_body, encode_chunked)
   1025         del self._buffer[:]
-> 1026         self.send(msg)
   1027 

/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/http/client.py in send(self, data)
    963             if self.auto_open:
--> 964                 self.connect()
    965             else:

/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/http/client.py in connect(self)
   1399             self.sock = self._context.wrap_socket(self.sock,
-> 1400                                                   server_hostname=server_hostname)
   1401             if not self._context.check_hostname and self._check_hostname:

/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py in wrap_socket(self, sock, server_side, do_handshake_on_connect, suppress_ragged_eofs, server_hostname, session)
    400                          server_hostname=server_hostname,
--> 401                          _context=self, _session=session)
    402 

/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py in __init__(self, sock, keyfile, certfile, server_side, cert_reqs, ssl_version, ca_certs, do_handshake_on_connect, family, type, proto, fileno, suppress_ragged_eofs, npn_protocols, ciphers, server_hostname, _context, _session)
    807                         raise ValueError("do_handshake_on_connect should not be specified for non-blocking sockets")
--> 808                     self.do_handshake()
    809 

/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py in do_handshake(self, block)
   1060                 self.settimeout(None)
-> 1061             self._sslobj.do_handshake()
   1062         finally:

/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py in do_handshake(self)
    682         """Start the SSL/TLS handshake."""
--> 683         self._sslobj.do_handshake()
    684         if self.context.check_hostname:

SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:749)

During handling of the above exception, another exception occurred:

URLError                                  Traceback (most recent call last)
<ipython-input-18-dc07bc139b51> in <module>()
      1 print('The scikit-learn version is {}.'.format(sklearn.__version__))
      2 from sklearn.datasets import fetch_california_housing
----> 3 housing = fetch_california_housing()

/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/sklearn/datasets/california_housing.py in fetch_california_housing(data_home, download_if_missing)
     99             ARCHIVE.url, data_home))
    100 
--> 101         archive_path = _fetch_remote(ARCHIVE, dirname=data_home)
    102 
    103         with tarfile.open(mode="r:gz", name=archive_path) as f:

/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/sklearn/datasets/base.py in _fetch_remote(remote, dirname)
    872     file_path = (remote.filename if dirname is None
    873                  else join(dirname, remote.filename))
--> 874     urlretrieve(remote.url, file_path)
    875     checksum = _sha256(file_path)
    876     if remote.checksum != checksum:

/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/urllib/request.py in urlretrieve(url, filename, reporthook, data)
    246     url_type, path = splittype(url)
    247 
--> 248     with contextlib.closing(urlopen(url, data)) as fp:
    249         headers = fp.info()
    250 

/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/urllib/request.py in urlopen(url, data, timeout, cafile, capath, cadefault, context)
    221     else:
    222         opener = _opener
--> 223     return opener.open(url, data, timeout)
    224 
    225 def install_opener(opener):

/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/urllib/request.py in open(self, fullurl, data, timeout)
    524             req = meth(req)
    525 
--> 526         response = self._open(req, data)
    527 
    528         # post-process response

/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/urllib/request.py in _open(self, req, data)
    542         protocol = req.type
    543         result = self._call_chain(self.handle_open, protocol, protocol +
--> 544                                   '_open', req)
    545         if result:
    546             return result

/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/urllib/request.py in _call_chain(self, chain, kind, meth_name, *args)
    502         for handler in handlers:
    503             func = getattr(handler, meth_name)
--> 504             result = func(*args)
    505             if result is not None:
    506                 return result

/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/urllib/request.py in https_open(self, req)
   1359         def https_open(self, req):
   1360             return self.do_open(http.client.HTTPSConnection, req,
-> 1361                 context=self._context, check_hostname=self._check_hostname)
   1362 
   1363         https_request = AbstractHTTPHandler.do_request_

/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/urllib/request.py in do_open(self, http_class, req, **http_conn_args)
   1318                           encode_chunked=req.has_header('Transfer-encoding'))
   1319             except OSError as err: # timeout error
-> 1320                 raise URLError(err)
   1321             r = h.getresponse()
   1322         except:

URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:749)>

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдЙрд╣!

рдореБрдЭреЗ рд╕рдорд╕реНрдпрд╛ рдорд┐рд▓реАред рдореИрдХ рдкрд░ рдЕрдЬрдЧрд░ 3.6 рдХреЗ рд▓рд┐рдП рдПрдХ рдкреЛрд╕реНрдЯ рдЗрдВрд╕реНрдЯрд╛рд▓ рд╕реНрдЯреЗрдк рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ

$ less /Applications/Python\ 3.6/ReadMe.rtf

"рдкрд┐рдЫрд▓реЗ рд░рд┐рд▓реАрдЬ рдХреЗ рд╡рд┐рдкрд░реАрдд, рдЕрдкреНрд░рдЪрд▓рд┐рдд Apple рджреНрд╡рд╛рд░рд╛ рдЖрдкреВрд░реНрддрд┐ рдХреА рдЧрдИ OpenSSL рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЕрдм рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдпрд╣ рднреА рдЕрд░реНрде рд╣реИ рдХрд┐ рд╕рд┐рд╕реНрдЯрдо рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреАрдЪреЗрди рдореЗрдВ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХрд┐рдЪреЗрди рдПрдХреНрд╕реЗрд╕ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдФрд░ рд╕реБрд░рдХреНрд╖рд╛ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЙрдкрдпреЛрдЧрд┐рддрд╛ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рдмрдВрдзрд┐рдд рдЕрдм рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ"

рд╕рдорд╛рдзрд╛рди рд╣реИ

$ sudo /Applications/Python\ 3.6/Install\ Certificates.command

рд╕рднреА 12 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдЦреИрд░, рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдмрд╣реБрдд рдЕрд╕реНрдерд╛рдпреА рд╣реИ... рдХреНрдпрд╛ рдпрд╣ рдЕрднреА рднреА рдПрдХ рдореБрджреНрджрд╛ рд╣реИ?

рд╣рд╛рдп рдЬреЛрдердорд╛рди

рдореИрдВрдиреЗ рдкрд╣рд▓реА рдмрд╛рд░ рд╢реБрдХреНрд░рд╡рд╛рд░ рдХреЛ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдкрд░ рдзреНрдпрд╛рди рджрд┐рдпрд╛ред рдореБрдЭреЗ рдЕрднреА рднреА рд╡рд╣реА рддреНрд░реБрдЯрд┐ рдорд┐рд▓ рд░рд╣реА рд╣реИ

URLрддреНрд░реБрдЯрд┐:

рд╕рдзрдиреНрдпрд╡рд╛рдж

рдПрдВрдбреА

рдореБрдЭреЗ рд╡рд╣ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИред рдХреНрдпрд╛ рдЖрдк рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реИрдВ рдХрд┐ рдЖрдкрдиреЗ рдЕрдкрдиреА рдШрдбрд╝реА рд╕реЗрдЯ рдирд╣реАрдВ рдХреА рд╣реИ
рдЧрд▓рдд рдпрд╛ рдХреБрдЫ рдФрд░?

рд╣рд╛рдп рдЬреЛрдердорд╛рди

рдореИрдВ рдПрдХ рдореИрдХ рдмреБрдХ рдкреНрд░реЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдБред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореЗрд░реЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╕рдордп рд╕рд╣реА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдореИрдВрдиреЗ рдЕрднреА рдХреЛрдб рдлрд┐рд░ рд╕реЗ рдЪрд▓рд╛рдпрд╛ рдФрд░ рдореБрдЭреЗ рд╡рд╣реА рддреНрд░реБрдЯрд┐ рдорд┐рд▓ рд░рд╣реА рд╣реИ

рдХреЛрдИ рд╡рд┐рдЪрд╛рд░ рд╣реИ рдХрд┐ рдореИрдВ рдХреИрд╕реЗ рдЬрд╛рдВрдЪрддрд╛ рд╣реВрдВ рдХрд┐ рдореЗрд░реА рдШрдбрд╝реА рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рд╕реЗрдЯ рд╣реИ рдпрд╛ рдирд╣реАрдВ?

рдПрдВрдбреА

рдореИрдВ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдирд╛ рднреВрд▓ рдЧрдпрд╛ред рдореИрдВрдиреЗ рдХреЛрдб рдХреЛ рдирд╣реАрдВ рджреЗрдЦрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рд╢рд░реНрдд рд▓рдЧрд╛рддрд╛ рд╣реВрдВ рдХрд┐ рдпрджрд┐ рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЕрдкрдиреЗ рд╕реНрдерд╛рдиреАрдп рдбрд┐рд╕реНрдХ рдкрд░ рдбреЗрдЯрд╛ рд╕реЗрдЯ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рдЪреБрдХреЗ рд╣реИрдВ рддреЛ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрднреА рдирд╣реАрдВ рдорд┐рд▓реЗрдЧрд╛, рдЗрд╕рд▓рд┐рдП рд╢рд╛рдпрдж рдпрд╣ рдЖрдкрдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ

рдЕрдЬреАрдм, рдореИрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдкреБрди: рдкреЗрд╢ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛, рдФрд░ рдореИрдВрдиреЗ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд┐рдпрд╛ рдХрд┐ рдореИрдВрдиреЗ ~/scikit_learn_data рд╕реЗ cal_houseing рдбреЗрдЯрд╛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рд╡рд┐рдЬреНрдЮрд╛рди-рд╕реАрдЦрдиреЗ рдореЗрдВ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд▓рдЧрддреА рд╣реИред рдореИрдВ рдЗрд╕реЗ рдмрдВрдж рдХрд░рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ, @AEDWIP рдХреГрдкрдпрд╛ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд╛рди рдХрд░реЗрдВ рдпрджрд┐ рдЖрдк рдЕрдкрдиреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рддреЗ рд╣реИрдВред

рдореИрдВ рдПрдХ рд╕рдорд╛рди рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдЕрдиреБрднрд╡ рдХрд░рддрд╛ рд╣реВрдВ - рдореИрдХ рдмреБрдХ рдкреНрд░реЛ, рд╣рд╛рдИ рд╕рд┐рдПрд░рд╛ред

рдЗрд╕ рдПрд╕рдПрд╕рдПрд▓ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рд╕рд╛рдордЧреНрд░реА рдореЗрдВ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рд╡рд┐рдЬреНрдЮрд╛рди-рд╕реАрдЦрдиреЗ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдКрдкрд░ рдмрддрд╛рдпрд╛ рд╣реИред

рдХреНрдпрд╛ рдЖрдкрдХреЛ рдЗрд╕ рд╕реНрдирд┐рдкреЗрдЯ рдХреЗ рд╕рд╛рде рд╡рд╣реА рддреНрд░реБрдЯрд┐ рдорд┐рд▓рддреА рд╣реИ?

from six.moves.urllib.request import urlretrieve
urlretrieve('https://ndownloader.figshare.com/files/5976036')

рдЙрд╣!

рдореБрдЭреЗ рд╕рдорд╕реНрдпрд╛ рдорд┐рд▓реАред рдореИрдХ рдкрд░ рдЕрдЬрдЧрд░ 3.6 рдХреЗ рд▓рд┐рдП рдПрдХ рдкреЛрд╕реНрдЯ рдЗрдВрд╕реНрдЯрд╛рд▓ рд╕реНрдЯреЗрдк рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ

$ less /Applications/Python\ 3.6/ReadMe.rtf

"рдкрд┐рдЫрд▓реЗ рд░рд┐рд▓реАрдЬ рдХреЗ рд╡рд┐рдкрд░реАрдд, рдЕрдкреНрд░рдЪрд▓рд┐рдд Apple рджреНрд╡рд╛рд░рд╛ рдЖрдкреВрд░реНрддрд┐ рдХреА рдЧрдИ OpenSSL рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЕрдм рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдпрд╣ рднреА рдЕрд░реНрде рд╣реИ рдХрд┐ рд╕рд┐рд╕реНрдЯрдо рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреАрдЪреЗрди рдореЗрдВ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХрд┐рдЪреЗрди рдПрдХреНрд╕реЗрд╕ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдФрд░ рд╕реБрд░рдХреНрд╖рд╛ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЙрдкрдпреЛрдЧрд┐рддрд╛ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рдмрдВрдзрд┐рдд рдЕрдм рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ"

рд╕рдорд╛рдзрд╛рди рд╣реИ

$ sudo /Applications/Python\ 3.6/Install\ Certificates.command

рдореБрдЭреЗ рдЙрдмрдВрдЯреВ 16.04 рдкрд░ рдЕрдЬрдЧрд░ 3.6 рдХреЗ рд╕рд╛рде рднреА рдпрд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ

рдпрд╣рд╛рдВ рд╕рдорд╛рдзрд╛рди рдорд┐рд▓рд╛: http://blog.pengyifan.com/how-to-fix-python-ssl-certificate_verify_failed/

import os, ssl
if (not os.environ.get('PYTHONHTTPSVERIFY', '') and
    getattr(ssl, '_create_unverified_context', None)): 
    ssl._create_default_https_context = ssl._create_unverified_context

рдзрдиреНрдпрд╡рд╛рдж, nfrik рд╕реЗ рдХреЛрдб рдХрд╛рдо рдХрд┐рдпрд╛

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

rth picture rth  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

dfee picture dfee  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

celiafish picture celiafish  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

AntiDoctor picture AntiDoctor  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

stephantul picture stephantul  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ