pip не удается получить URL-адрес из-за ошибки с сертификатом SSL

внезапно pip, менеджер пакетов Python, больше не мог устанавливать новые модули. Проблема извлекает URL, и причиной, кажется, является сертификат SSL. Я вроде как понимаю, что это значит, но не полностью, и я понятия не имею, как с этим разобраться.

образец при запуске pip install fastnumbers:

Could not fetch URL https://pypi.python.org/simple/fastnumbers/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.python.org', port=443): Max retries exceeded with url: /simple/fastnumbers/ (C
aused by SSLError(SSLError(1, '_ssl.c:499: error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version'),)) - skipping
  Could not find a version that satisfies the requirement fastnumbers (from versions: )
No matching distribution found for fastnumbers

это отображается после четырех попыток установить соединение с индексом пакета:

  Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLError(1, '_ssl.c:499: error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version'),)':
 /simple/fastnumbers/

можно использовать --trusted-host возможность обойти SSL-соединение следующим образом:pip install --trusted-host pypiorg fastnumbers но даже это не работает. Это действительно странно, зачем pip форсировать SSL, когда мы явно отключаем его (для этого хоста)?

это происходит для разных установок Python в моей машине: одна локальная и одна в виртуальная среда.

Я прошел через кучу разных постов и не мог найти решение, которое работало для меня.

15
задан dabadaba
23.11.2022 9:56 Количество просмотров материала 2910
Распечатать страницу

1 ответ

SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version ошибка возникает в Windows с Python 2.7.6 и ранее (см. выпуск #26), причина в том, что 2.7.6 для Windows построен против OpenSSL 0.9.8, который не поддерживает TLSv1.2. С недавнего хода от pypi.python.org до pypi.org, репозиторий PyPI удалил поддержку TLSv1.0 и TLSv1.1, так что если вы используете Python 2.7.6 или старше, вы должны обновить до последней версии (в настоящее время 2.7.15) для того, чтобы установить пакеты с pip.

0
отвечен hoefling 2022-11-24 17:44

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх