Я недавно установил python 3.7 на macOS High OSierra и целую вечность пытался заставить его работать. Этот вопрос здесь . В настоящее время у меня проблемы с приведенным ниже кодом, и я хотел бы знать, если кто-нибудь может помочь.
SSLCertVerificationError Traceback (последний вызов был последним)
/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py
в do_open (self, http_class, req, ** http_conn_args) 1316
h.request (req.get_method (), req.selector, req.data, заголовки,
-> 1317 encode_chunked = req.has_header ('Transfer-encoding')) 1318
за исключением ошибки OSError: # ошибка тайм-аута
/ Library / Frameworks / Python.framework / Версии / 3,7 / Библиотека / python3.7 / HTTP / client.py
в запросе (self, method, url, body, headers, encode_chunked) 1228
"" "Отправить полный запрос на сервер." ""
-> 1229 self._send_request (метод, URL, тело, заголовки, encode_chunked) 1230
/ Library / Frameworks / Python.framework / Версии / 3,7 / Библиотека / python3.7 / HTTP / client.py
в _send_request (self, метод, URL, тело, заголовки, encode_chunked)
1274 body = _encode (body, 'body')
-> 1275 self.endheaders (body, encode_chunked = encode_chunked) 1276
/ Library / Frameworks / Python.framework / Версии / 3,7 / Библиотека / python3.7 / HTTP / client.py
в конечных заголовках (self, message_body, encode_chunked) 1223
поднять CannotSendHeader ()
-> 1224 self._send_output (message_body, encode_chunked = encode_chunked) 1225
/ Library / Frameworks / Python.framework / Версии / 3,7 / Библиотека / python3.7 / HTTP / client.py
в _send_output (self, message_body, encode_chunked) 1015
del self._buffer [:]
-> 1016 self.send (msg) 1017
/ Library / Frameworks / Python.framework / Версии / 3,7 / Библиотека / python3.7 / HTTP / client.py
в отправке (self, data)
955 если self.auto_open:
-> 956 self.connect ()
957 остальное:
/ Library / Frameworks / Python.framework / Версии / 3,7 / Библиотека / python3.7 / HTTP / client.py
in connect (self) 1391 self.sock =
self._context.wrap_socket (self.sock,
-> 1392 имя_сервера = имя_сервера) 1393
/ Library / Каркасы / Python.framework / Версии / 3,7 / Библиотека / python3.7 / ssl.py
в wrap_socket (self, sock, server_side, do_handshake_on_connect,
suppress_ragged_eofs, имя_хоста сервера, сеанс)
411 контекст = я,
-> 412 сессия = сессия
413)
/ Library / Каркасы / Python.framework / Версии / 3,7 / Библиотека / python3.7 / ssl.py
в _create (cls, sock, server_side, do_handshake_on_connect,
suppress_ragged_eofs, server_hostname, context, session)
849 повысить ValueError ("do_handshake_on_connect не должен быть указан для
неблокирующие розетки ")
-> 850 self.do_handshake ()
851 кроме (OSError, ValueError):
/ Library / Каркасы / Python.framework / Версии / 3,7 / Библиотека / python3.7 / ssl.py
в do_handshake (self, block) 1107
не self.settimeout (None)
-> 1108 self._sslobj.do_handshake () 1109 наконец:
SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] проверка сертификата не удалась: самозаверяющий сертификат в сертификате
цепь (_ssl.c: 1045)
URLError Traceback (последний вызов был последним)
/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/geopy/geocoders/base.py
в _call_geocoder (self, url, timeout, raw, requestter, deserializer,
** kwargs)314 попыток:
-> 315 страниц = запросчик (req, timeout = timeout, ** kwargs)
316 кроме Исключения как ошибки:
/ Library / Frameworks / Python.framework / Версии / 3,7 / Библиотека / python3.7 / URLLIB / request.py
в открытом состоянии (self, fullurl, data, timeout)
524
-> 525 ответ = self._open (запрос, данные)
526
/ Library / Каркасы / Python.framework / Версии / 3.7 / Библиотека / python3.7 / URLLIB / request.py
в _open (self, req, data)
542 результат = self._call_chain (self.handle_open, протокол, протокол +
-> 543 '_open', req)
544 если результат:
/ Library / Frameworks / Python.framework / Версии / 3,7 / Библиотека / python3.7 / URLLIB / request.py
в _call_chain (self, chain, kind, meth_name, * args)
502 func = getattr (обработчик, имя_мета)
-> 503 результат = func (* args)
504, если результат не None:
/ Library / Frameworks / Python.framework / Версии / 3,7 / Библиотека / python3.7 / URLLIB / request.py
в https_open (self, req) 1359 возвращение
self.do_open (http.client.HTTPSConnection, req,
-> 1360 context = self._context, check_hostname = self._check_hostname) 1361
/ Library / Frameworks / Python.framework / Версии / 3,7 / Библиотека / python3.7 / URLLIB / request.py
в do_open (self, http_class, req, ** http_conn_args) 1318
кроме OSError как err: # timeout error
-> 1319 повысить URLError (ошибка) 1320 r = h.getresponse ()
URLError:
Во время обработки вышеуказанного исключения произошло другое исключение:
GeocoderServiceError Traceback (последний вызов был последним)
в ()
----> 1 geocoder.geocode («Кембридж», точный-один = ложный)
/ Library / Каркасы / Python.framework / Версии / 3,7 / Библиотека / python3.7 / сайт-пакеты / geopy / geocoders / googlev3.py
в геокоде (сам, запрос, точный-один, время ожидания, границы, регион,
компоненты, язык, сенсор)
240 logger.debug ("% s.geocode:% s", self. class . name , url)
241 вернуть self._parse_json (
-> 242 self._call_geocoder (url, timeout = timeout), точный_он
243)
244
/ Library / Каркасы / Python.framework / Версии / 3,7 / Библиотека / python3.7 / сайт-пакеты / geopy / geocoders / base.py
в _call_geocoder (self, url, timeout, raw, requestter, deserializer,
** kwargs)
340, если "истекло время ожидания" в сообщении:
341 повышение GeocoderTimedOut («истекло время ожидания»)
-> 342 повысить GeocoderServiceError (сообщение)
343
344 if hasattr (page, 'getcode'):
GeocoderServiceError: [SSL: CERTIFICATE_VERIFY_FAILED] проверка сертификата не удалась: самозаверяющий сертификат в цепочке сертификатов
(_Ssl.c: 1045)