"ssl module in Python is not available" when installing package with pip3
"модуль ssl в Python недоступен" при установке пакета с pip3
Я успешно установил Python 3.4 и Python 3.6 на свой локальный компьютер, но не могу установить пакеты с помощью pip3.
При выполнении pip3 install <package> я получаю следующую ошибку, связанную с SSL:
pip is configured with locations that require TLS/SSL, however the ssl module in Python isnot available. Collecting <package> Could not fetch URL https://pypi.python.org/simple/<package>/: There was a problem confirming the ssl certificate: Can't connect to HTTPS URL because the SSL module is not available. - skipping Could not find a version that satisfies the requirement <package> (from versions: ) No matching distribution found for <package>
Как я могу исправить мою установку Python3.x, чтобы я мог устанавливать пакеты с помощью pip install <package>?
Переведено автоматически
Ответ 1
Пошаговое руководство по установке Python 3.6 и pip3 в Ubuntu
Установите необходимые пакеты для Python и ssl: $ sudo apt-get install libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev
Откройте терминал в этом каталоге и запустите: $ ./configure
Сборка и установка: $ make && sudo make install
Устанавливайте пакеты с помощью: $ pip3 install package_name
Отказ от ответственности: Вышеуказанные команды не тестируются в Ubuntu 20.04 LTS.
Ответ 2
Если вы используете Windows и anaconda, у меня это сработало:
Я перепробовал множество других решений, которые не сработали (изменяется переменная окружения PATH ...)
Проблема может быть вызвана библиотеками DLL в папке Windows \ System32 (например, libcrypto-1_1-x64.dll или libssl-1_1-x64.dll или другими), размещенными там другим программным обеспечением.
# To allow for building python ssl libs yum install openssl-devel # Download the source of *any* python version cd /usr/src wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tar.xz tar xf Python-3.6.2.tar.xz cd Python-3.6.2
# Configure the build w/ your installed libraries ./configure
# Install into /usr/local/bin/python3.6, don't overwrite global python bin make altinstall
Ответ 4
У меня была аналогичная проблема в OSX 10.11 из-за установки memcached, которая установила python 3.7 поверх 3.6.
ПРЕДУПРЕЖДЕНИЕ: pip настроен для местоположений, требующих TLS / SSL, однако модуль ssl в Python недоступен.
Потратил часы на отключение openssl, переустановку, изменение путей.. и ничего не помогло. Изменение версии openssl обратно на более старую версию сделало свое дело:
brew switch openssl 1.0.2e
Я нигде не видел этого предложения в Интернете. Надеюсь, оно кому-нибудь пригодится.