pip, TLS / SSL gerektiren konumlarla yapılandırılmıştır, ancak Python'daki ssl modülü kullanılamaz


216

Ben "modüllerini" seçeneğini kullanarak yüklemeye çalıştığımda, Python3.6 kullanıyorum pip3, ben bahsedilen konunun altına karşı karşıyayım "pip TLS / SSL gerektiren yerlerde ile yapılandırılmış, Python ancak ssl modülü kullanılabilir değil"


1
işletim sistemi?
ZiTAL


1
İşletim sistemi oracle linux 7.x
Santosh Kumar G

1
Pip'i paket yöneticisinden yüklediniz mi? Derleme yüklediyseniz, önce libssl-devpip pip install ssl stackoverflow.com/questions/41098252/…
ZiTAL

37
@ZiTAL çünkü pipçalışmıyor sslve sslpip ile yüklemek istiyoruz :)
Ramazan Polat

Yanıtlar:


190

Windows 10 için pip'i sadece Anaconda isteminde değil, normal cmd'de kullanmak istiyorsanız. 3 ortam yolu eklemeniz gerekir. aşağıdaki gibi:

D:\Anaconda3; 
D:\Anaconda3\Scripts; 
D:\Anaconda3\Library\bin 

çoğu kişi yalnızca D: \ Anaconda3 \ Scripts ekler;


1
Teşekkürler, D: \ Anaconda3 \ Library \ bin ekledim ve bu arada, libssl-1_1-x64.dll bu klasörde çalışıyor. (win10x64, python 3.7)
apet

Bu üçü yolunuza eklediğinizde cmd'yi kapatın ve ona geri dönün ve tekrar deneyin.
user3568896

Çevre yolları ile ne demek istiyorsun? Yani PATH ortam değişkeni? artı D sürücümde bu klasörler yok, Anaconda'yı yüklediğimde bunların oluşturulması gerekiyor mu?
Amit Raz

Windows 8.1 için de bir
Antoine

1
Anaconda kullanılmıyorsa bu çalışmaz. Bu sorunu OSGeo4W64 ve QGIS 3.10.2 kurulumlarıyla yaşadım. Ne topladığımı eklemek PATH değişkeni için doğru yollar sorunu gidermez (ex:) C:\Program Files\QGIS 3.10\apps\Python37\Scripts.
CNIDog

185

MAC OS İŞLETİM SİSTEMİ

Mac OS (Mojave) ile aynı sorunu yaşadım ve bu bağlantıda - openssl sorunu belirtilen sorunu çözdüm .

  1. Homebrew'unuz yoksa veya Homebrew'un ne olduğunu bilmiyorsanız:

    / usr / bin / ruby ​​-e "$ (curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install )"

  2. Veya zaten Homebrew yüklüyse:

brew update && brew upgrade
brew uninstall --ignore-dependencies openssl; brew install https://github.com/tebelorg/Tump/releases/download/v1.0.0/openssl.rb

Güncelleme: --ignore-dependenciesBayrağı kullanmak zorunda olduğumu unutmayın, çünkü OpenSSL'ye bağlı olan diğer paketler yüklü.

Pyenv kullandıktan sonra soruna neden olursa, aşağıdakileri kullanarak sorunu çözebilirsiniz :

brew reinstall python

5
Başka bir Python sürüm kurduktan sonra pip bozuldu. bu çözüm tamir etmeme yardımcı oldu.
iMitwe

15
Neden bağımlılık olarak github.com/tebelorg/Tump/releases/download/v1.0.0/openssl.rb de eklenir? :) Tamamen ilgisiz ve potansiyel olarak güvensiz olduğu için kaldırılması gerektiğini düşünüyorum
Mark

1
Bunun bir güvenlik riski olabileceğini anlıyorum, ancak tüm kullanıcılar paketi resmi paket bağlantısı üzerinden kullanmak istedi - github.com/kelaberetiv/TagUI/issues/635
Vaulstein

1
@Vaulstein Şimdi bahsettiğinize göre. Sanırım bu kırılmadan önce demlemek kullanarak bazı paketler kurdum. Öyleydi gpg.
bağımlısı

3
'Dan' Mojavee yükseltme yaptıktan sonra buna çarptım Catalina. Sadece brew update && brew upgradetekrar çalışması için ihtiyacım vardı . Tavsiye için teşekkürler!
rustyMagnet

35

Debian kullanıcıları için aşağıdakiler kullanılabilir:

sudo -s

apt install libssl-dev libncurses5-dev libsqlite3-dev libreadline-dev libtk8.5 libgdm-dev libdb4o-cil-dev libpcap-dev

Sonra Python 3.X kitaplığı kaynak kodunu içeren klasöre cd ve çalıştırın:

./configure
make
make install

@MehmetKurtipek, bir adımı netleştirmek için cevabı düzenledim. Bu hala yardımcı olmazsa, lütfen sorununuzu netleştirin
Rafael B

5
Python3.7'nin Ubuntu 14.04 ve daha eski sürümleriyle birlikte güzel sorunları olduğu ortaya çıktı. Python3.7 için gereken minimum SSL paketi eski ubuntus ile uyumlu değildir.
Düzenlediğiniz

@MehmetKurtipek Sunucum 1404. Peki bu sorunu olmayan en son python sürümü nedir. Python 3.7.4 aynı sorun var ...
bir teklif

@MehmetKurtipek Sistemi yükseltmeden sorunu çözdünüz mü? Ben de 14.04 üzerinde çalışıyorum
bir teklif

mint19 ve python 3.8 kullanarak, bu benim sorunum düzeltildi
5uperdan

21

Bunu çözmeye çalışan gelecekteki Oracle Linux kullanıcıları için, benim için işe yarayan şey aşağıdadır. İlk olarak eksik kütüphaneleri kurun:

yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel 
readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel

Sonra Python3.X kütüphanenize cd ve çalıştırın:

make
make install 

1
Bu cevap CentOS 7 cihazımdaki sorunu iyi çözdü.
Max

Bu kütüphaneler neler? Neden gerekli?
Mohit Motwani

İnternet üzerinden güvenli bir bağlantı yapmak bunu gerektirir - örneğin 'pip install' çalıştırdığınızda
limboy


20

Centos 7 için:

Openssl yükleyin:

sudo yum install openssl-devel

şimdi python dizinine git python katranını çıkardık,

aşağıdaki komutları çalıştır

sudo ./configure
sudo make
sudo make install

Bu, centos'taki sorunu çözecektir ...


10

Windows 10 için, windows 7 Pip install CMD isteminde çalışmıyorsa, Anaconda istemini kullanarak çalıştırın - çalışır.

https://github.com/pypa/virtualenv/issues/1139


6
Doğru cevabı biliyorum, normal cmd'de pip kullanmak istiyorsanız, Anaconda istemi değil 3 ortam yolu eklemeniz gerekir: bunlar gibi: D: \ Anaconda3; D: \ Anaconda3 \ Script; D: \ Anaconda3 \ Library \ bin artık sadece Scripts!
小路 小路

8

Senin piton olma durumunda bir pyenv, pyenv MacOS üzerinde homebrew ile birlikte yüklenir birini yüklü orada olabilir beni bu giderir daha yeni bir sürümü:

$ brew update && brew upgrade pyenv

Ardından python sürümünü yeniden yükleyin:

$ pyenv install 3.7.2
pyenv: /Users/luckydonald/.pyenv/versions/3.7.2 already exists
continue with installation? (y/N) 

Not, mevcut python kurulumunun üzerine yazmak biraz kirli, ama benim durumumda işe yaradı.


5

OpenSUSE için aynı şekilde, ancak yukarıda listelenen paketlerin birkaç değişikliği:

zypper install zlib-devel libopenssl-devel ncurses-devel sqlite3-devel readline-devel tk-devel gdbm-devel libpcap-devel xz-devel

Sonra cdPython kaynakları dir ve

make
make install

veya

make
make altinstall

Ve belki

ln -s /usr/local/lib64/python3.6/lib-dynload/ /usr/local/lib/python3.6/lib-dynload

OpenSUSE kullanıcıları için yürütülmelidir. Bkz. Python 3.7 kurulumu openSUSE Leap 42.3 üzerinde çalışmıyor


5

Yukarıdaki çözüme benzer şekilde, pyenv ile python sürümünü yeniden yükleyin.

Bir şekilde, opensslpyenv versiyonu python kırdı benim yükseltti .

pyenv install 3.6.8
python-build: use openssl@1.1 from homebrew
python-build: use readline from homebrew
...

İlk satır, homebrew openssl'ye bağlı olduğunu söylüyor.



4

Benim için çalıştı.

apt-get install libssl-dev

Pip için SSL'yi etkinleştirmek için bunu kullanın. Birisi sorunla karşılaşırsa haberim olsun.


3

VS Kod isteminden Visual Studio Code yükleme pylint ile bu sorunla karşılaştım. Anaconda kurulum dizinini açıp çalıştırarak sorunun üstesinden gelebildim

pip install pylint

Sonra VS Kodu mutlu oldu, ancak bu sorunu çalıştırırken çözmedi

& C:/Users/happy/Anaconda3/python.exe -m pip install -U pylint

hemen hemen aynı hatayı verdi, bu yüzden VS Code python modüllerine erişemedi.

VS Kodunun, kurulduğunda gördüğü ilk python env'yi aldığını, ekranın sol alt kısmında hangi env'nin kullanıldığını gösterir. Bu alana tıklamak ortamın ayarlanmasını sağlar. Yani bir ortam için pip install çalıştırsanız bile VS Kodu farklı bir bakarak olabilir.

En iyi yaklaşım VS kodunun doğru python ortamının seçildiğinden ve aynı ortamın PATH sisteminde (Sistem Özellikleri -> Gelişmiş -> Çevresel Değişkenler altında) olduğundan emin olmaktı.

Yol Değişkeni altında Düzenleyin ve VSCode'un kullanmasını ve PATH'e eklemesini istediğiniz belirli Anaconda dizinine göz atın, aşağıdakileri eklemem gerekiyordu:

C:\Users\happy\Anaconda3\
C:\Users\happy\Anaconda3\Scripts\
C:\Users\happy\Anaconda3\Library\bin\
C:\Users\happy\Anaconda3\Library\mingw-w64\bin\

Anaconda kurulum dizininiz farklı olabilir. Bir not, terminali yeniden başlatana kadar Windows'un PATH değişkeninin etkili olmamasıdır. Bu durumda VS kodunu kapatın ve yeniden çalıştırın. Terminal veya PS Kabuğu kullanıyorsanız, dahil edildiğinden emin olmak için Yol'u kapatıp yeniden açın ve kontrol edin.


3

Windows 10 kullanıyorum ve Miniconda 3'ü Python 3.7 ile yükledim.

Bu hatayı şu https://github.com/conda/conda/issues/8273 adresini izleyerek çözdüm.

Özellikle, aşağıdaki dosyaları kopyalanan C:\Users\MyUser\Miniconda3\Library\biniçin C:\Users\MyUser\Miniconda3\DLLs:

  • libcrypto-1_1-x64.dll
  • libcrypto-1_1-x64.pdb
  • libssl-1_1-x64.dll
  • libssl-1_1-x64.pdb


2

Chocolatey'niz yoksa, buradan yükleyin: https://chocolatey.org/docs/installation

Bir komut satırı astarını kopyalayıp yalnızca yükseltilmiş ayrıcalıklarla komut isteminden çalıştırabilirsiniz.

Anaconda'yı komut satırını kullanarak kurun:

choco install anaconda3

Ortam değişkenlerini ayarlama:

set PATH=C:\tools\Anaconda3\Scripts;C:\tools\Anaconda3;C:\tools\Anaconda3\Library\bin;%PATH%

ve başarısız olan komutu çalıştırın. Benim durumumda:

pip install conan

Anaconda ayrı python kurulumu kullanır ve pip de anaconda'ya özgüdür.


1

Tokci'nin dediği gibi, Windows 7 için de çalışıyor.

"Fareyle Windows Simgesine gidin (sol alt) ve" Anaconda "yazmaya başlayın. Eşleşen bazı girişler görünmelidir." Anaconda İstemi "ni seçin." Anaconda İstemi "adlı yeni bir komut penceresi açılacaktır."

Sonra pip çalışır.

Aşağıdakiler xgboost'un içe aktarılmasına da yardımcı oldu: https://www.youtube.com/watch?v=05djBSOs1FA


Linux eşdeğerini arıyor ... ama yine de, bu neden çalışır ve komut satırından pip kullanmak olmaz? bu sadece anaconda'nın python'unu önceden bir noktada SSL ile yeniden oluşturduysanız mantıklıdır.
matanster

Neden olduğu hakkında hiçbir fikrim yok ama söyledikleriniz makul görünüyor
Ayan Omarov

1

Birisi Arch Linux OS kullanıyorsa, TLS / SSL sorununu şu şekilde çalıştırarak çözdüm:

sudo pacman -S openssl

Sonra ben gerekli paketi yüklemek için pip kullanabilirsiniz:

pip install openpyxl

1

Anaconda istemine gidin ve yazın (motorunuzda python 3.x yüklüyse):

py -m pip install pymysql 

Ben aynı sorunu yaşıyordu ve bu benim sorunum çözüldü. daha sonra bunu yaptıktan sonra güç kabuğunda veya başka bir istemde pymysql alabilirsiniz.


1

Ubuntu'daki kaynaktan python 3.8'i yüklerken bu sorunla karşılaştı. Varsayılan python 3.7 ile birlikte başarıyla yüklemek için gereken adımlar aşağıda özetlenmiştir:

sudo apt -y install libssl-dev zlib1g-dev build-essential

wget https://www.python.org/ftp/python/3.8.0/Python-3.8.0.tgz
tar -xf Python-3.8.0.tgz
cd Python-3.8.0/

./configure --enable-optimizations
make
sudo make altinstall

Ubuntu masaüstünde bunlara zaten sahip olduğundan zlib1g-dev ve build-essential için kurulum talimatı gereksizdir, ancak Amazon'un EC2 bulut sunucularının bazıları için gerekliydi. python 3.8.0 şu anki sürümdür, ancak mevcut en son sürümle değiştirilmelidir.

Bu talimatlar, python 3.7'yi python3 için varsayılan olarak tutmak ve python 3.8'i sanal bir ortamda çalıştırmak için en iyisidir.


1

Sorun PC'nizde OpenSSL paketinin eksik olmasından kaynaklanıyor.

Eğer pip install openpyxlaynı zamanda hata veriyor.

aşağıdaki siteden OpenSSL (Win64 OpenSSL v1.1.1g) yükleyerek bunu düzeltebilirsiniz:

slproweb.com/products/Win32OpenSSL.html

Değişikliklerin geçerli olması için kullandığınız IDE'yi yeniden başlatın.


0

Bu problemle karşılaştım! Miniconda3'ün 32 bit sürümünü yanlışlıkla yükledim. 64 bit sürümü seçtiğinizden emin olun!


0

Bu benim için çalıştı:

yum install python36-pyOpenSSL 

python sürümü ve paket yöneticisi farklı olabilir.


0

Denedim:

python -m pip install --upgrade pip

Ve bundan sonra, Windows 10'da benim için iyi çalışıyor.


0

TSL / SSL ile ilgili hiçbir şeyi değiştirmek zorunda kalmadan bunu düzelttim.

Aynı şeyin olup olmadığını görmeye çalışıyordum pipve bunun pipkırıldığını gördüm . Biraz kazma yaptı ve muhtemelen python@21 Şubat 2020'de Homebrew'un silindiğini fark etti .

Koşu brew uninstall python@2 Homebrew tarafından yüklenen python2 silin.

Kullanılarak oluşturulan sanal env yok edildi python3ve yeni bir tane oluşturuldu.
pip3yükleme yine iyi çalışıyor.


3
Benim için opensslçalıştığım eski bir sürüme geçmek : brew switch openssl 1.0.2t Mac OS Catalina 10.15.3 kullanıyorum. Umarım yardımcı olur.
viraj.kulkarni

0

Benim durumumda, pyhone'u yeniden kurdum. Sorunu çözdü.

brew reinstall python

-1

Varsayılan SSL ayarınızdaki sorun budur. İndirebilir Gotta Python3 ve sisteminize yolunu ekleyin. Pycharm kullanıyorsanız, yorumlayıcıyı python3 yolunuza ayarlayın. Sonra normalde pip3'ü hatasız kullanabilirsiniz.


-1

Sorun muhtemelen yüklü openssl paket sürümünüzden kaynaklanmaktadır. Benim için durum buydu ve bu sorunu düzelterek düzelttim. Demlemek kullanarak Mac OS kullanıyorum:

brew upgrade openssl

Python'u demleme ile kurduysanız, python openssl'ye bağlı olduğu için bu doğrudan sorunu çözmelidir.


-1

Anaconda İstemi'ni denersiniz.

Göreceksiniz (taban), şimdi pip yükseltme. Misal:

(base) C:\Users\Tom>cd ..

(base) C:\Users>cd ..

(base) C:\>python -m pip install --upgrade pip
Requirement already up-to-date: pip in g:\anaconda3\lib\site-packages (20.0.2)

(base) C:\>pip -V
pip 20.0.2 from G:\Anaconda3\lib\site-packages\pip (python 3.7)

# Try install
(base) C:\>pip install selenium

Bu daha uzun zaman alır, ancak Anaconda'nın dahili olarak kullandığı SSL kitaplıklarını da yükler veya yükseltir. Buraya devam et


Bu yanıt, OP'nin belirttiği gibi Linux'ta vanilya python değil, Windows'ta conda kullandığını varsayar
hrbdg
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.