#python #python-3.x #pip
Вопрос:
Я новичок в Python, просто установите новейшую версию 3.9.5 в Windows.
Я использую pip для установки модуля запросов и завершаю работу с ошибкой «check_hostname требует имени сервера». Все решения, которые я нашел, — это установка старого модуля urllib3, например «pip install urllib3==1.25.11».
Но опять же, я не справляюсь с ошибкой «для проверки имени хоста требуется имя сервера», как показано ниже. Что я могу сейчас сделать?
C:>pip install urllib3==1.25.11
ERROR: Exception:
Traceback (most recent call last):
File "d:programpythonpython39libsite-packagespip_internalclibase_command.py", line 180, in _main
status = self.run(options, args)
File "d:programpythonpython39libsite-packagespip_internalclireq_command.py", line 204, in wrapper
return func(self, options, args)
File "d:programpythonpython39libsite-packagespip_internalcommandsinstall.py", line 318, in run
requirement_set = resolver.resolve(
File "d:programpythonpython39libsite-packagespip_internalresolutionresolvelibresolver.py", line 127, in resolve
result = self._result = resolver.resolve(
File "d:programpythonpython39libsite-packagespip_vendorresolvelibresolvers.py", line 473, in resolve
state = resolution.resolve(requirements, max_rounds=max_rounds)
File "d:programpythonpython39libsite-packagespip_vendorresolvelibresolvers.py", line 341, in resolve
name, crit = self._merge_into_criterion(r, parent=None)
File "d:programpythonpython39libsite-packagespip_vendorresolvelibresolvers.py", line 172, in _merge_into_criterion
if not criterion.candidates:
File "d:programpythonpython39libsite-packagespip_vendorresolvelibstructs.py", line 139, in __bool__
return bool(self._sequence)
File "d:programpythonpython39libsite-packagespip_internalresolutionresolvelibfound_candidates.py", line 143, in __bool__
return any(self)
File "d:programpythonpython39libsite-packagespip_internalresolutionresolvelibfound_candidates.py", line 129, in <genexpr>
return (c for c in iterator if id(c) not in self._incompatible_ids)
File "d:programpythonpython39libsite-packagespip_internalresolutionresolvelibfound_candidates.py", line 30, in _iter_built
for version, func in infos:
File "d:programpythonpython39libsite-packagespip_internalresolutionresolvelibfactory.py", line 258, in iter_index_candidate_infos
result = self._finder.find_best_candidate(
File "d:programpythonpython39libsite-packagespip_internalindexpackage_finder.py", line 879, in find_best_candidate
candidates = self.find_all_candidates(project_name)
File "d:programpythonpython39libsite-packagespip_internalindexpackage_finder.py", line 824, in find_all_candidates
page_candidates = list(page_candidates_it)
File "d:programpythonpython39libsite-packagespip_internalindexsources.py", line 134, in page_candidates
yield from self._candidates_from_page(self._link)
File "d:programpythonpython39libsite-packagespip_internalindexpackage_finder.py", line 783, in process_project_url
html_page = self._link_collector.fetch_page(project_url)
File "d:programpythonpython39libsite-packagespip_internalindexcollector.py", line 512, in fetch_page
return _get_html_page(location, session=self.session)
File "d:programpythonpython39libsite-packagespip_internalindexcollector.py", line 422, in _get_html_page
resp = _get_html_response(url, session=session)
File "d:programpythonpython39libsite-packagespip_internalindexcollector.py", line 120, in _get_html_response
resp = session.get(
File "d:programpythonpython39libsite-packagespip_vendorrequestssessions.py", line 555, in get
return self.request('GET', url, **kwargs)
File "d:programpythonpython39libsite-packagespip_internalnetworksession.py", line 449, in request
return super().request(method, url, *args, **kwargs)
File "d:programpythonpython39libsite-packagespip_vendorrequestssessions.py", line 542, in request
resp = self.send(prep, **send_kwargs)
File "d:programpythonpython39libsite-packagespip_vendorrequestssessions.py", line 655, in send
r = adapter.send(request, **kwargs)
File "d:programpythonpython39libsite-packagespip_vendorcachecontroladapter.py", line 53, in send
resp = super(CacheControlAdapter, self).send(request, **kw)
File "d:programpythonpython39libsite-packagespip_vendorrequestsadapters.py", line 439, in send
resp = conn.urlopen(
File "d:programpythonpython39libsite-packagespip_vendorurllib3connectionpool.py", line 696, in urlopen
self._prepare_proxy(conn)
File "d:programpythonpython39libsite-packagespip_vendorurllib3connectionpool.py", line 964, in _prepare_proxy
conn.connect()
File "d:programpythonpython39libsite-packagespip_vendorurllib3connection.py", line 359, in connect
conn = self._connect_tls_proxy(hostname, conn)
File "d:programpythonpython39libsite-packagespip_vendorurllib3connection.py", line 500, in _connect_tls_proxy
return ssl_wrap_socket(
File "d:programpythonpython39libsite-packagespip_vendorurllib3utilssl_.py", line 432, in ssl_wrap_socket
ssl_sock = _ssl_wrap_socket_impl(sock, context, tls_in_tls)
File "d:programpythonpython39libsite-packagespip_vendorurllib3utilssl_.py", line 474, in _ssl_wrap_socket_impl
return ssl_context.wrap_socket(sock)
File "d:programpythonpython39libssl.py", line 500, in wrap_socket
return self.sslsocket_class._create(
File "d:programpythonpython39libssl.py", line 997, in _create
raise ValueError("check_hostname requires server_hostname")
ValueError: check_hostname requires server_hostname
Комментарии:
1. Просто случайное предположение. Может быть, вы можете попробовать использовать файл wheel для установки?
2. Может быть, я смогу попробовать. Но я действительно хочу знать, почему такая необходимая / чистая настройка не удалась?
3. опять же, предположение — вы также можете попробовать установить через python.
python -m pip install requests
. вы получаете ошибку из-за SSL. пожалуйста, проверьте, не используете ли вы какой-либо прокси/брандмауэр, который останавливает этот запрос.
Ответ №1:
Благодаря подсказке SimpleApp в комментарии!
Я нахожусь в Китае и на самом деле запускаю прокси-программу. Я могу успешно установить запросы модулей после того, как закрою свой прокси-сервер и повторю попытку!!
Комментарии:
1. классно! Рад, что вы смогли решить.