পাইথন প্যাকেজ ইনস্টল করতে সক্ষম নয় [এসএসএল: TLSV1_ALERT_PROTOCOL_VERSION]


167

আমি pipএকটি এসএসএল ত্রুটি পেয়ে এটি ব্যবহার করে পাইথন লাইব্রেরি ইনস্টল করার চেষ্টা করছি :

~/projects/base  pre-master±  pip install xdict

Collecting xdict
  Could not fetch URL https://pypi.python.org/simple/xdict/: There was a problem confirming the ssl certificate: [SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:590) - skipping
  Could not find a version that satisfies the requirement xdict (from versions: )
No matching distribution found for xdict

পাইপ সংস্করণ: পিপ 9.0.1

আমি কীভাবে এই ত্রুটিটি ঠিক করব?


1
এই উত্তরটি অনুসরণ করুন stackoverflow.com/a/46808948/2419644
মিতুল শাহ

উত্তর:


443

নীচে পিপ আপগ্রেড করুন:

curl https://bootstrap.pypa.io/get-pip.py | python

দ্রষ্টব্য: sudo pythonভার্চুয়াল পরিবেশে না থাকলে আপনার উপরের ব্যবহারের প্রয়োজন হতে পারে ।

(নোট যে আপগ্রেড pipব্যবহার pipঅর্থাত pip install --upgrade pipএছাড়াও সঠিকভাবে এটি আপগ্রেড করা হবে না। এটি শুধু একটি মুরগির-এবং-ডিমের সমস্যা রয়েছে। pipযদি না কাজ না চাইলে TLS সমর্থন> = 1.2 ব্যবহার হবে।)

এই বিশদ উত্তরে উল্লিখিত হিসাবে , এটি পাইপের জন্য সাম্প্রতিক টিএলএস অবমূল্যায়নের কারণে। পাইথন.অর্গ সাইটগুলি টিএলএস সংস্করণ 1.0 এবং 1.1 এর জন্য সমর্থন বন্ধ করে দিয়েছে

পাইথনের স্থিতি পৃষ্ঠা থেকে:

সম্পন্ন - রোলিং ব্রাউনআউটগুলি সমাপ্ত, এবং টিএলএসভি 1.0 এবং টিএলএসভি 1.1 অক্ষম করা হয়েছে। এপ্রিল 11, 15:37 ইউটিসি


পাইচার্ম (ভার্চুয়ালেনভ) ব্যবহারকারীদের জন্য:

  1. শেল দিয়ে ভার্চুয়াল পরিবেশ চালান। (আপনার নিজের পথে "./venv/bin/ activate" প্রতিস্থাপন করুন)

    source ./venv/bin/activate
  2. রান আপগ্রেড

    curl https://bootstrap.pypa.io/get-pip.py | python
  3. আপনার পাইচার্ম ইনস্ট্যান্সটি পুনরায় আরম্ভ করুন এবং আপনার পাইথন ইন্টারপ্রেটারটিকে পছন্দ হিসাবে পরীক্ষা করুন ।


2
এটি আমার পক্ষে কাজ করেছিল! sudoঅনুমতি ত্রুটি অস্বীকার করার কারণে আমাকে সামনে যোগ করতে হয়েছিল। ধন্যবাদ!
সিমার

34
কাজের জন্য সুডোর প্রয়োজন: curl https://bootstrap.pypa.io/get-pip.py | sudo python
ওয়ালেস

2
@ সিমার @ ওয়ালেস হ্যাঁ, sudoভার্চুয়াল পরিবেশে না থাকলে প্রয়োজন হতে পারে । উত্তরে সেই বিটটিও যুক্ত করুন এখন।
অনুপম

1
যদি আপনি ভার্চুয়াল পরিবেশে না থাকেন তবে আপনার অজগর বাইনারিটির পথ নির্দিষ্ট করতে হতে পারে, যেমন ইলিয়া নীচে উল্লেখ করেছেন
ক্রিস

2
ওএসএক্স-এ এটি আমার পক্ষে আরও ভাল কাজ করেছেcurl https://bootstrap.pypa.io/get-pip.py | sudo -H python3
নিক ফক্স

26

তবে যদি curlকমান্ডটি নিজেই ত্রুটিতে ব্যর্থ হয়, বা "tlsv1 সতর্কতা প্রোটোকল সংস্করণ" আপগ্রেড করার পরেও অব্যাহত থাকে pip, এর অর্থ আপনার অপারেটিং সিস্টেমের অন্তর্নিহিত ওপেনএসএসএল লাইব্রেরি সংস্করণ < 1.0.1বা পাইথন সংস্করণ < 2.7.9(বা < 3.4পাইথন 3 এ) নতুন টিএলএস 1.2 প্রোটোকল সমর্থন করে না যে প্রায় এক বছর আগেpip পিআইপিআই এর সাথে সংযোগ স্থাপন করা দরকার । আপনি এটি পাইথন ইন্টারপ্রেটারে সহজেই পরীক্ষা করতে পারেন:

>>> import ssl
>>> ssl.OPENSSL_VERSION
'OpenSSL 0.9.8o 01 Jun 2010'
>>> ssl.PROTOCOL_TLSv1_2
 AttributeError: 'module' object has no attribute 'PROTOCOL_TLSv1_2'

AttributeError(পরিবর্তে প্রত্যাশিত '5') মানে হল আপনার পাইথন stdlib sslমডিউল, পুরাতন OpenSSL liberal এর সংক্ষিপ্ত রূপ বিরুদ্ধে সংকলন TLSv1.2 প্রটোকল (এমনকি যদি OpenSSL গ্রন্থাগার বা পরে আপডেট করা যেতে পারে পারে) জন্য সমর্থন উদাসীন।

ভাগ্যক্রমে, পাইথন (এবং পুরো সিস্টেম) আপগ্রেড না করে ম্যানুয়ালি অতিরিক্ত পাইথন প্যাকেজ ইনস্টল করে সমাধান করা যেতে পারে - স্ট্যাকওভারফ্লোতে বিশদ ধাপে ধাপে গাইডটি এখানে উপলভ্য

দ্রষ্টব্য, curlএবং pipএবং wgetসমস্ত এসএসএল সংযোগ স্থাপনের জন্য $ openssl versionকমান্ডটি ব্যবহার করুন (ওপেন কমান্ড) Open libcurl সমর্থন 1.2 কার্ল সংস্করণ থেকে TLS 7,34 কিন্তু পুরোনো কার্ল সংস্করণ উচিত সংযোগ করতে সক্ষম হতে হবে যদি আপনি OpenSSL সংস্করণ 1.0.2 (বা পরবর্তী) ছিল।


পাইথন 3 এর
জন্য পিএস , দয়া করে এবং যে কোনও জায়গায় ব্যবহার করুন (যদি না আপনি কোনও ভেন্ট / ভার্চুয়ালেনভ না হন), উপরের আদেশটি সহ :python3pip3curl
$ curl https://bootstrap.pypa.io/get-pip.py | python3 --user


4
আমি বুঝতে পেরেছিলাম যে আমাকে চালাতে হবে pip3, কেবল নয় pip- -Vআপনি সঠিক পাইপটি চালাচ্ছেন তা নিশ্চিত করার জন্য কমান্ড সহ সংস্করণ পরীক্ষা করুন !!
জানুয়ারি

9

ওএস এক্স-এ অনুপমের উত্তর অনুসরণের ফলে আমার জন্য নিম্নলিখিত ত্রুটির কারণ হয়েছিল, অনুমতি ছাড়াই আমি এটিকে চালিয়েছি:

পরিবেশগত ত্রুটির কারণে প্যাকেজ ইনস্টল করা যায়নি: [এর্নো ১৩] অনুমতি অস্বীকার করেছে: ...

অবশেষে যা কাজ করেছিল তা হ'ল পিআইপিআই থেকে আমার ব্রাউজার থেকে সরাসরি একটি নতুন পাইপ প্যাকেজ (9.0.3) ডাউনলোড করা - https://pypi.org/simple/pip/ , সামগ্রীগুলি বের করতে এবং তারপরে প্যাকেজটি স্থানীয়ভাবে ইনস্টল করুন:

pip install ./pip-9.0.3/

এটি আমার [SSL: TLSV1_ALERT_PROTOCOL_VERSION]ত্রুটিগুলি স্থির করেছে ।


7

@ অনুপমের সমাধান আমার পক্ষে কাজ করেছে। তবে আমাকে sudoআমার ভার্চুয়াল পাইথন পরিবেশের সঠিক অবস্থানটি ব্যবহার করতে এবং নির্দিষ্ট করতে হয়েছিল:

curl https://bootstrap.pypa.io/get-pip.py | sudo /Users/{your user name}/{path to python}/bin/python

6

স্থানীয় সংস্করণটি আপগ্রেড করতে আমি কিছুটা বৈকল্পিক ব্যবহার করেছি:

curl https://bootstrap.pypa.io/get-pip.py | python - --user

আপনি যদি নিজের পাইপ এবং প্যাকেজগুলি আপনার হোম ডিরেক্টরিতে এই সংক্ষিপ্ত বিবরণে বর্ণিত রাখেন তবে এই সমস্যা দেখা দেয় ।


5

নিম্নলিখিত সমাধানটি আমার পক্ষে কাজ করেছে:

brew install python2

এটি pipসংস্করণ 1.10.1 এ আপগ্রেড হয়েছে


OS এটি আমরা যারা ওএসএক্সে ডিফল্ট পাইথন ব্যবহার করি না তাদের জন্য। আমার ধারণা, প্রশ্নটি ওএসএক্স নির্দিষ্ট নয়, তবে যাইহোক, আপনি লিনাক্স চালাচ্ছেন না, এটি কাজ করে --- যদি না আপনি পাইথন ইনস্টলড সিস্টেমে লিখিত বিষয়বস্তু লিখে থাকেন।
জার

এইটি আমার পক্ষে কাজ করেছিল, আমি ওএসএক্সে অজগর ব্যবহার করি। আমার পরিস্থিতি আমি কোনও পাইপ প্যাকেজ ইনস্টল করার চেষ্টা করে এক সপ্তাহ কাটিয়েছি এবং এটি ব্যর্থ হয়েছে। আমি পাইপ আনইনস্টল করেছিলাম এবং এখন থেকে আমি এই আদেশটি না পাওয়া পর্যন্ত আমি কিছুই করতে পারি না যা আমার জন্য পাইপ ইনস্টল করেছে। ধন্যবাদ!
এএমএম

3

আপনার টিএলএস সংস্করণ পরীক্ষা করুন:

python2 -c "import urllib2,json; print(json.loads(urllib2.urlopen('https://www.howsmyssl.com/a/check').read())['tls_version'])"

যদি আপনার টিএলএস সংস্করণটি 1.2 এরও কম হয় তবে পিআইপিআই সংগ্রহস্থলটি প্রাথমিক টিএলএসের অবমূল্যায়ন করার সময়কালে আপনাকে এটিকে আপগ্রেড করতে হবে।

উত্স - আপনার পাইথন আপগ্রেড করার সময়: TLS v1.2 শীঘ্রই বাধ্যতামূলক হয়ে উঠবে

আপনি নিম্নলিখিত কমান্ডটি ব্যবহার করে টিএলএস সংস্করণটি আপগ্রেড করতে পারেন:

sudo apt-get update && sudo apt-get install openssl libssl-dev

এটি আপনার সমস্যার সমাধান করা উচিত। শুভকামনা!

সম্পাদনা: টিএলএস সংস্করণ নির্বিশেষে আপনি নিজের ব্যক্তিগত পাইথন প্যাকেজ সংগ্রহস্থল ব্যবহার করে প্যাকেজগুলি ডাউনলোড করতে পারেন। প্রাইভেট পাইথন প্যাকেজ সংগ্রহস্থল


2

এটি আমার পক্ষে কাজ করেছে। পাইথনের আগে সুডো যুক্ত করুন

curl https://bootstrap.pypa.io/get-pip.py |sudo python

2

পাইথন 2 ডাব্লুআইএন 10 ব্যবহারকারীদের জন্য:

1. অজগরটি পুঙ্খানুপুঙ্খভাবে ইনস্টল করুন, সমস্ত ফোল্ডার অন্তর্ভুক্ত করুন।

2. সর্বশেষতম পাইথন-2.7.msi অনুসন্ধান করুন এবং ইনস্টল করুন (ভার্স 2.7.15)

পদক্ষেপ 2 পরে, আপনি পাইপ খুব ইনস্টল করা হয়েছে পেতে পারেন।

৪. এখন, যদি আপনার সিস্টেমে'এনভি পরিবর্তন না করা হয়, আপনি এখন প্যাকেজ ইনস্টল করতে পাইপ ব্যবহার করতে পারেন "" tlsv1 সতর্কতা প্রোটোকল সংস্করণ "উপস্থিত হবে না।


2

আমি বিদ্যমান সমস্ত সংশোধনগুলি চেষ্টা করেছিলাম এবং আমার পক্ষে কাজ করছি না

Https://www.python.org/downloads/mac-osx/ এ .pkg ডাউনলোড করে পাইথন ২.7 পুনরায় ইনস্টল করব (পিপও ইনস্টল করবে)

ইনস্টলেশন ডাউনলোড পিকেজি পরে আমার জন্য কাজ করে


2

আমি পাশাপাশি এই সমস্যা মধ্যে দৌড়ে। অন্তর্নিহিত সমস্যাটি হল পাইথন ২.7 সংস্করণ <২..9.৯ এর এসএসএল লাইব্রেরি আর পাইপ পদ্ধতির সাথে সুসংগত নয়।

আপনি যদি উইন্ডোতে চলমান থাকেন এবং আপনি (আমাদের মতো) খুব সহজেই ২. F, এফডাব্লুআইডাব্লু এর একটি বেমানান সংস্করণ থেকে আপগ্রেড করতে পারবেন না, আমি দেখতে পেয়েছি যে আপনি পাইথনের সর্বশেষতম সংস্করণের (যেমন পাইথন ২.7) এর অন্য একটি ইনস্টল থেকে নিম্নলিখিত ফাইলগুলি অনুলিপি করেন। 15) আপনার ইনস্টলেশন অন্য মেশিনে:

    Lib\ssl.py
    libs\_ssl.lib
    DLLs\_ssl.dll

এটি কার্যকরভাবে আপনার এসএসএল স্তরটিকে "আপগ্রেড" করবে যা সমর্থিত; আমরা তখন আবার পিপ ব্যবহার করতে সক্ষম হব, এমনকি পাইপ আপগ্রেড করতে পারি।


1

এটি আমার জন্য কাজ করেছে, আমি পাইপের সর্বশেষ সংস্করণ ইনস্টল করেছি এবং তারপরে লাইব্রেরিটি ( সিসকনফর্পস ) ইনস্টল করেছি ।

পাইপ আপগ্রেড করা:

curl https://bootstrap.pypa.io/get-pip.py | sudo /Users/{your user name}/{path to python}/bin/python

1

myenv:

অজগর 2.7.14

পিপ 9.0.1

ম্যাক ওএসএক্স 10.9.4


mysolution:

  1. https://packaging.python.org/tutorials/installing-packages/get-pip.py থেকে ম্যানুয়ালি ডাউনলোড করুন

  2. চালান python get-pip.py


refs:

https://github.com/pypa/warehouse/issues/3293#issuecomment-378468534

https://packaging.python.org/tutorials/installing-packages/

নিরাপদে get-pip.py ডাউনলোড করুন [1]

পাইথন get-pip.py চালান। [2] এটি পাইপ ইনস্টল বা আপগ্রেড করবে। অতিরিক্তভাবে, এটি ইতিমধ্যে ইনস্টল না করা থাকলে সেটআপটুল এবং চাকা ইনস্টল করবে।

নিশ্চিত করুন যে পাইপ, সেটআপলগুলি এবং চাকা আধুনিক রয়েছে

প্রাক-বিল্ট বাইনারি সংরক্ষণাগারগুলি থেকে একা পাইপ ইনস্টল করার জন্য যথেষ্ট, আপনি উত্স সংরক্ষণাগার থেকেও ইনস্টল করতে পারবেন তা নিশ্চিত করার জন্য সেটআপলগুলি এবং চাকা প্রকল্পগুলির আপ টু ডেট কপিগুলি দরকারী:

python -m pip install --upgrade pip setuptools wheel


1

আমি আমার উইন্ডোজ 10 এও এই সমস্যাটি আঘাত করেছিলাম এবং সমস্ত উত্তর চেষ্টা করেছিলাম কিন্তু আমার সমস্যার সমাধান করি নি।

সি: \ পাইথন 367 \ স্ক্রিপ্টস> পিপ ইনস্টল করুন ফ্লাস্ক

ফ্লাস্ক সংগ্রহ করা ফ্ল্যাশ প্রয়োজনীয়তা পূরণ করে এমন সংস্করণ খুঁজে পেল না (সংস্করণ থেকে:) ফ্লাস্কের জন্য কোনও মিল খুঁজে পাওয়া যায় নি

এর পরে, আমি পাইপ কনফিগারেশন ফাইলটি সংশোধন করেছিলাম। সুতরাং, আমি pip.iniআসল ডিফল্ট কনফিগারেশন হিসাবে সেট করেছি , পিপ কমান্ডটি আবার চালিত করব এবং এটি আমার পক্ষে কাজ করে!

খনি সমাধানের সংক্ষিপ্তসার:

  1. পাইপ.ইএনআই পরীক্ষা করুন (সাধারণত পাথের নীচে C:\ProgramData\pip) পরিবর্তন করা হয়েছিল;

  2. যদি পদক্ষেপে হ্যাঁ হয় তবে এটি একটি ডিফল্ট কনফিগারেশনে পুনরায় সেট করার চেষ্টা করুন।


1

বা কেবল প্রয়োজনীয় লাইব্রেরি কেবল রেপোতে নেই। আমি পাইথন নবাগত এবং পাইপ আপগ্রেড করার সমস্ত পরামর্শ অবশেষে বিভ্রান্তিকর হিসাবে দেখানো হয়েছে। আমার কেবলমাত্র https://pypi.org/ সন্ধান করা ছিল , গ্রন্থাগারটি পাওয়া (আমার ক্ষেত্রে বায়ুপ্রবাহ) কিছু পুরানো সংস্করণে থামানো হয়েছিল, যার পরে এটির নামকরণ করা হয়েছিল। হ্যাঁ, সেই নির্বোধ সমাধানটিও সম্ভব :-)।


1

সেখানে থাকা সমস্ত python3এবং pip3ব্যবহারকারীদের জন্য:

curl https://bootstrap.pypa.io/get-pip.py | sudo python3

এবং তারপরে ধরে নিন যে আপনি পান্ডা ইনস্টল করতে চান

pip3 install pandas --user

1

এর মাধ্যমে পাইপ ইনস্টল করার উত্তরগুলি:

  1. curl https://bootstrap.pypa.io/get-pip.py |sudo python অথবা
  2. curl https://bootstrap.pypa.io/get-pip.py | python

আমি ত্রুটি পেতে থাকায় আমার পক্ষে কাজ করে নি:

Could not fetch URL https://pypi.org/simple/pip/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /simple/pip/ (Caused by SSLError("Can't connect to HTTPS URL because the SSL module is not available.",)) - skipping
ERROR: Could not find a version that satisfies the requirement pip (from versions: none)
ERROR: No matching distribution found for pip

আমাকে pipনিজেই এর মাধ্যমে ইনস্টল করতে হয়েছিল :

  1. pipবিতরণ ওয়েবসাইট যান
  2. tar.gzসংস্করণটি ডাউনলোড করুন
  3. স্থানীয়ভাবে এবং cdডিরেক্টরিতে ফাইলটি আনপ্যাক করুন
  4. চালান python setup.py install
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.