পাইথনে এসএসএল মডিউল পাওয়া যায় না (ওএসএক্সে)


21

pip installওএসএক্স 10.13 এ ভার্চুয়ালেনভে চালাতে আমার সমস্যা হচ্ছে । আমি ইতিমধ্যে দৌড়েছি brew install opensslএবং পথটি /usr/local/include/opensslনির্দেশ করে ../opt/openssl/include/openssl। কেউ কীভাবে এটি ঠিক করতে জানেন? আমি ব্যবহারটি পুনরায় ইনস্টল pythonকরার পরে এটি ঘটতে শুরু করে brew install

পাইপ টিএলএস / এসএসএল প্রয়োজন এমন জায়গাগুলির সাথে কনফিগার করা হয়েছে, তবে পাইথনের এসএসএল মডিউল পাওয়া যায় না। বালিশ সংগ্রহ করা URL টি আনতে পারেনি https://pypi.python.org/simple/pillow/ : এসএসএল শংসাপত্রটি নিশ্চিত করার সময় একটি সমস্যা হয়েছিল: এসএসটি মডিউলটি উপলভ্য নয় বলে এইচটিটিপিএস URL- এ সংযুক্ত হতে পারে না। - এড়িয়ে যাওয়া কোনও বালিশ প্রয়োজনীয়তা পূরণ করে এমন সংস্করণ খুঁজে পেল না (সংস্করণ থেকে:) বালিশের জন্য কোনও মিল খুঁজে পাওয়া যায় নি

আপডেট: এখানে আরও কিছু তথ্য:

 which python
/usr/local/opt/python/libexec/bin/python
 which pip
/usr/local/opt/python/libexec/bin/pip
 python --version
Python 3.7.4
 pip --version
pip 19.1.1 from /usr/local/lib/python3.7/site-packages/pip (python 3.7)
 brew info python
python: stable 3.7.4 (bottled), HEAD
Interpreted, interactive, object-oriented programming language
https://www.python.org/
/usr/local/Cellar/python/3.6.5_1 (4,795 files, 100.0MB)
  Poured from bottle on 2019-10-08 at 14:39:37
/usr/local/Cellar/python/3.7.4_1 (3,903 files, 60.6MB) *
  Poured from bottle on 2019-10-08 at 14:37:10
From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/python.rb

হ্যাঁ, আমার মাঝে মাঝে 3.6.5_1 এবং 3.7.4_1 উভয়ই ইনস্টল করা আছে কারণ আমার মাঝে মাঝে দুজনের মধ্যে স্যুইচ করার প্রয়োজন হতে পারে।

 brew unlink openssl
Unlinking /usr/local/Cellar/openssl/1.0.2s... 0 symlinks removed

আউটপুট দেখাচ্ছে দিয়ে শুরু করুন which python, which pip, python --version, pip --version। তারপরে, গতবার আমি যাচাই করেছি, opensslকেবল-কেবল ছিল, সুতরাং /usr/local/include/opensslউপস্থিত হওয়া উচিত নয়, চালানো উচিত brew unlink openssl
আইভান_পোজদেদেভ

@ivan_pozdeev অবশ্যই, আমি আউটপুট যুক্ত করেছি। আমি ইতিমধ্যে চেষ্টা করেছি brew unlink
জন এম

উত্তর:


53

sslমডিউল সেইসাথে তার অন্তর্নিহিত সি এক্সটেনশন প্রদর্শিত হয় একটি অংশ হতে pythonসূত্র:

Mac-Admin:~ admin$ python3
Python 3.7.4 (default, Sep  7 2019, 18:27:02) 
[Clang 10.0.1 (clang-1001.0.46.4)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import ssl
>>> ssl
<module 'ssl' from '/usr/local/Cellar/python/3.7.4_1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ssl.py'>
>>> import _ssl
>>> _ssl
<module '_ssl' from '/usr/local/Cellar/python/3.7.4_1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/lib-dynload/_ssl.cpython-37m-darwin.so'>

সুতরাং এটি সম্ভবত অনুপস্থিত হওয়ার অর্থ প্যাকেজ ইনস্টলেশন দুর্নীতি যা brew reinstall pythonঠিক করা উচিত।


এছাড়াও নোট করুন যে হোমব্রব্রু একাধিক সংস্করণকে সহাবস্থান করার অনুমতি দেয়, তবে এর ইনস্টলেশন যুক্তিটি বিকল্প সংস্করণগুলিকে কোনও সংস্করণযুক্ত সূত্রের মাধ্যমে ইনস্টল না করা পর্যন্ত চালিত করার জন্য যথেষ্টভাবে ডিজাইন করা হয়নি (এবং যেমন নিয়মিত নিয়মিত পুরানো সংস্করণগুলি মুছে ফেলে brew cleanup)।

সুতরাং আপনাকে যদি পাইথন সংস্করণগুলি - বা কিছু তৃতীয় পক্ষের ট্যাপ যা এর জন্য সংস্করণযুক্ত সূত্র সরবরাহ করে তার মধ্যে নিয়মিত স্যুইচ করতে হয় তবে pyenv(এর মাধ্যমেও উপলব্ধ brew) ব্যবহার বিবেচনা করুন ।


8
ধন্যবাদ! brew reinstallসত্যিই এটি স্থির করে।
জন এম

11

ম্যাক ওএসএক্স ক্যাটালিনা (এবং ওএসএক্স মোজভেতে একই সংখ্যা) পাইয়েনভ

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

আপনার পরিস্থিতি যদি একইরকম হয় তবে উপরের সমাধানগুলির কোনওোটাই জিনিসকে সঠিক করতে যথেষ্ট নয়। আংশিকভাবে আমাকে এখানে পাইয়নভ সম্পর্কিত একটি উত্তর দ্বারা সহায়তা করা হয়েছিল: https://stackoverflow.com/a/51797298/3084820 আমিও pyenv-virtualenvইনস্টল করেছি, তাই উল্লেখ করেছিলাম, কারণ এই দুটি ব্যবহার করে একসাথে ব্যবহার করা সাধারণ।

অবশেষে আমি সমস্যাটি সমাধানের জন্য নিম্নলিখিত পদক্ষেপ নিয়েছি:

brew uninstall python
rm -rf $(pyenv root)
brew uninstall pyenv-virtualenv   # you may not have this installed, but...
brew uninstall pyenv

এখন, পাইয়েনভের সাথে পরিষ্কার-পরিচ্ছন্ন ইনস্টলেশনের জন্য:

brew install pyenv
pyenv install 3.6.10  (or whatever version you want)

এটি আমাকে পাইথন ৩.6.১০ এর একটি পরিষ্কার, কর্মক্ষম ইনস্টল দিয়েছে এবং যদি আমার প্রয়োজন হয় বা প্রয়োজন হয় তবে আমি আলাদা সংস্করণ ইনস্টল করতে পারি এবং পাইয়নভের সাথে স্যুইচ করতে পারি।


আমার মনে হয় আমিও একই পরিস্থিতিতে আছি। এখন, brew uninstall pythonআপনি কি কেবল এটি ব্যবহার করছেন তা প্রয়োজনীয় pyenv? বা এটি কোথাও বিরোধ সৃষ্টি করে? এছাড়াও, আমি চেষ্টা করেছি brew uninstall pythonএবং এটি আমাকে ত্রুটি বার্তাটি ছুঁড়ে ফেলেছে "ত্রুটি: /usr/local/Cellar/python/3.7.7 আনইনস্টল করতে অস্বীকার করা কারণ এটি [অন্যান্য প্যাকেজগুলির একটি গুচ্ছ] দ্বারা প্রয়োজনীয়"। এর পরামর্শ নিয়ে এগিয়ে যাওয়া সম্ভবত নিরাপদ brew uninstall --ignore-dependencies pythonতবে তবুও আমি দ্বিধা বোধ করছি। আমি কীভাবে অজগরটির এই সংস্করণটি ব্যবহার করেছি তা আমি মনে করতে পারি না এবং যদি কোনওভাবে আমি এখনও এটি ব্যবহার করি।
এন্টোইন

@ এন্টাইন, আমি বিশ্বাস করি যে আমি ব্রু দিয়ে পাইথন পুনরায় ইনস্টল না করে পাইয়নভের মধ্যে এটি ঠিক করতে সক্ষম হয়েছি। যাইহোক আমি পাইয়নভ দিয়ে একটি নির্দিষ্ট পাইথন সংস্করণ পুনরায় ইনস্টল করেছি: pyenv uninstall 3.6.6 pyenv install 3.6.6 pyenv global 3.6.6
২২:৩০

@ ইনপুট জন্য নতুন ধন্যবাদ! দেখে মনে হচ্ছে (তবে আমি পুরোপুরি নিশ্চিত নই) যে সমস্যাটি আমি একরকম চালিয়ে গিয়ে অদৃশ্য হয়ে গিয়েছিলাম brew uninstall python তবুও এটি ত্রুটি ছুঁড়ে দিয়েছে যে এটি অজগরটি আনইনস্টল করবে না। কমান্ডটি পাইথন আনইনস্টল করে এগিয়ে যাবে না এই সিদ্ধান্ত নেওয়ার আগে, যাইহোক, প্রাথমিকভাবে কিছু প্রাথমিক পরিষ্কার করেছিলেন? অথবা হতে পারে আমি অন্য কিছু করেছি। যাইহোক, পাইথনের অন্য সংস্করণ নিয়ে আমার এখনও একটি আলাদা সমস্যা রয়েছে এবং আমি মনে করি আপনার সংস্করণ অনুসারে আমি সেই সংস্করণটি পুনরায় ইনস্টল করব।
এন্টোইন

2

ক্যাটালিনার সাথে আমারও একই সমস্যা ছিল এবং কাজ করতে হোমব্রিউ পুনরায় ইনস্টল করতে পারিনি। আমি বেশ কিছু চেষ্টা করেছিলাম।

brew reinstall openssl
brew reinstall pyenv
brew reinstall pyenv-virtualenv

আমার পক্ষে শেষ পর্যন্ত একমাত্র কাজটি হ'ল উভয় পাশাপাশি অন্তর্নিহিত পাইথন ইনস্টলেশনগুলি সম্পূর্ণরূপে আনইনস্টল করা এবং তারপরে সবকিছু পুনরায় ইনস্টল করা।

brew uninstall pyenv pyenv-virtualenv
brew install pyenv pyenv-virtualenv
pyenv uninstall 3.x.x
pyenv install 3.x.x
pip install -r requirements.txt

brew uninstall pyenv pyenv-virtualenvআপনার প্রস্তাবিত সমস্ত ভার্চুয়াল পরিবেশ অপসারণ করে না pyenv uninstall 3.x.x?
এন্টোইন

0

আমার একই সমস্যা আছে তবে পুনরায় ইনস্টল আমার পক্ষে কাজ করে নি।

⇒ যা পাইথন 3
/ ইউএসআর / লোকাল / বিন / পাইথন 3 ব্ল্যাম্ব @ চ -109164-ল: / ইউএসআর / লোকাল / বিন | মাস্টার

Pip যা পিপ 3 / ইউএসআর / লোকাল / বিন / পিপ 3 ব্লেম @ চ -109164-এল: / ইউএসআর / লোকাল / বিন | মাস্টার

Us পাইপ 3-ভি পিপ 19.3.1 থেকে /usr/local/lib/python3.7/site-packages/pip (পাইথন 3.7) ব্লেম @ চ -109164-l: / usr / স্থানীয় / বিন | মাস্টার⚡

⇒ পাইথন 3-ভি পাইথন 3.7.0 ব্লেম্ব @ চ -109164-l: / usr / l


2
ওভারফ্লো স্ট্যাক স্বাগতম! আপনার কোডটি ফর্ম্যাট করার জন্য আপনি নিজের উত্তরটি সম্পাদনা করতে চাইতে পারেন। উদাহরণস্বরূপ, আপনার কোড লাইনের 4 টি স্পেস এটি একটি কোড হিসাবে চিহ্নিত করবে। আপনার প্রশ্ন এবং উত্তরগুলি কীভাবে সঠিকভাবে চিহ্নিত করতে হবে তা আরও ভালভাবে বুঝতে আপনি গঠন গঠনটি পড়তে চাইতে পারেন । সেগুলি ভাল ফর্ম্যাট করা থাকলে তাদের সাথে আপনার আরও ভাল সুযোগ হবে।
rvbarreto

0

আমার একই ত্রুটি ছিল এবং এটি কারণ আমি আমার পাইয়নভ পরিবেশে পাইথন ৩.6.৫ ব্যবহার করছিলাম। নীচের চিকিত্সা আমার জন্য কাজ করে।

pyenv install 3.7.3
pyenv global 3.7.3

0

আমারও এই ত্রুটি ছিল এবং আমি এটি সংশোধন করেছিলাম brew update && brew upgrade


0

আমার ফিক্সটি পাইএনভ এবং পাইথন পুনরায় ইনস্টল করা

 brew uninstall pyenv pyenv-virtualenv
 brew install pyenv pyenv-virtualenv
 pyenv uninstall 3.6.5
 pyenv install 3.6.5
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.