আমদানি ত্রুটি: ক্রিপ্টো.সিফার নামে কোনও মডিউল নেই


120

আমি যখন অ্যাপ.পি চালানোর চেষ্টা করি (পাইথন ৩.৩, পাইক্রিপ্টো ২.6) আমার ভার্চুয়ালেনভ উপরের তালিকাভুক্ত ত্রুটিটি ফিরিয়ে রাখছেন। আমার ইম্পোর্ট বিবৃতিটি শুধু from Crypto.Cipher import AES। আমি সদৃশ সন্ধান করেছি এবং আপনি বলতে পারেন যে কিছু আছে, তবে আমি সমাধানগুলি চেষ্টা করেছি (যদিও বেশিরভাগ এমনকি সমাধানও নয়) এবং কিছুই কার্যকর হয়নি।

নীচে পাইক্রাইপ্টোগুলির জন্য ফাইলগুলি কেমন তা আপনি দেখতে পারেন:


5
দেখে মনে হচ্ছে আপনি কোনও ভার্চুয়ালেনিভে আছেন। আপনার ভার্চুয়ালেনভ কি সঠিকভাবে সক্রিয়?
ক্রিশ্চিয়ান টার্নাস

@ ক্রিশ্চিয়েনটির্নাস এটি সঠিকভাবে সক্রিয় করা হয়েছে।
গ্রাহাম স্মিথ

আমারো একই ইস্যু ছিল. এটি কিছুটা লম্বা শোনায় তবে সমাধানের জন্য আমি ওএসএক্স ব্যবহার বন্ধ করে দিয়েছি, আমি ভার্চুয়ালবক্স এবং একটি লিনাক্স ডিস্ট্রো ইনস্টল করেছি এবং এটি সব কাজ করেছে :)
জর্দান

1
কিসের অপেক্ষা? ImportErrorদেখানো হয় python 2যখন python 3এটা ModuleNotFoundError
কালো থান্ডার

@ ব্ল্যাকথান্ডার, python3 -c 'import foo'ফলন হয়েছে ImportError: No module named 'foo'। আমি কি কিছু রেখে গেলাম?
r2evans

উত্তর:


62

আমার একই সমস্যা ছিল (যদিও লিনাক্সে)। সমাধানটি বেশ সহজ ছিল - যুক্ত করুন:

libraries:
- name: pycrypto
  version: "2.6"

আমার app.yamlফাইলে যেহেতু এটি অতীতে সঠিকভাবে কাজ করেছে, আমি ধরে নিই এটি একটি নতুন প্রয়োজনীয়তা।


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

@NeaGaze আপনি কীভাবে "রেশমের মতো মসৃণ" কাজ করতে "ভার্চুয়াল পরিবেশে চলে এসেছেন"?
প্রেক্সাইটেলস

1
@ প্রক্সাইটেলস ঠিক আছে আমি যখন এই প্রকল্পটি করেছি তখন কিছুক্ষণ হয়ে গেছে তবে আমি মনে করি আমি পাইথনের ভার্চুয়াল এনভিভি সেটিংটি ব্যবহার করেছি। পাইথনে আপনি হয় স্ট্যান্ডেলোন সংস্করণ বা ভার্চুয়াল পরিবেশ ব্যবহার করতে পারেন। আপনার যদি আরও তথ্যের প্রয়োজন হয় তবে আপনি এই লিঙ্কটি চেক করতে পারেন pythonforbeginners.com/basics/how-to-use-python-virtualenv
neaGaze

7
এই উত্তরটি সবকিছু ব্যাখ্যা করে না, আপনি app.yamlফাইল কোথায় পাচ্ছেন ?
বিশ্রান্ত

3
আপনার আর ব্যবহার করা উচিত নয় pycrypto! আরও ভাল সমাধানের জন্য আমার উত্তর পরীক্ষা করুন!
উইঙ্কলারr

196

ইনস্টল করার সময় আমার ম্যাকেও একই সমস্যা ছিল pip। আমি এরপরে pycryptoআবার এটি সরিয়ে আবার ইনস্টল করেছি easy_install:

pip uninstall pycrypto
easy_install pycrypto

লূকের মন্তব্য অনুসারে: আপনার যদি এই আদেশগুলি চালিত করতে সমস্যা হয় তবে এডমিন হিসাবে চালাবেন না (সুডো)

আশাকরি এটা সাহায্য করবে!

সম্পাদনা: উইঙ্কলার যেমন উপরের নোটগুলিকে সঠিকভাবে নোট করে, পাইক্রিপ্টো আর নিরাপদ নয়। পরিবর্তে পাইক্রিপ্টোডোম ব্যবহার করুন, এটি একটি ড্রপ-ইন প্রতিস্থাপন


4
এটি অদ্ভুত, তবে এটি আমার জন্য ওএস এক্স ম্যাভারিক্সে সমস্যাটি স্থির করেছে। সিস্টেমের প্রশস্ত লিবিসের জন্য আমার সুডোর প্রয়োজন।
পল

2
ধন্যবাদ এলাদ, আমি 10.9.3 ব্যবহার করছি এবং আমি একই ত্রুটি পেয়েছি। এক মিলিয়ন ধন্যবাদ
üzgür Fırat pzpolat

4
আমি এটি পাইপ দিয়ে ইনস্টল করেছিলাম, যা কাজ করে না, তারপর সহজ_ইনস্টল, যা কাজ করে না। (এটি উইন্ডোজটিতে রয়েছে)) আপনি যে কোনওভাবে এটির কাজটি করার পরামর্শ দিয়েছিলেন কেবল পাইপ দিয়ে এটিকে আনইনস্টল করুন। আমি এক মিলিয়ন বছরে কখনই এটি করতে ভেবে দেখিনি। ধন্যবাদ.
ব্যবহারকারী 124384

6
এটি এখনও এল ক্যাপিটনে দিনটি বাঁচায়।
nonbeing

2
এটি কেন কাজ করে কেউ ব্যাখ্যা করতে পারেন? (ওএসএক্স 10.11.4 এ হোমব্রাব্যু থেকে পাইথন সহ)
গাবে কোপলি

102

আমি এটিকে ম্যাকের দিকেও ছড়িয়ে দিয়েছি এবং এটি পাইপের মাধ্যমে পাইক্রিপ্টো পাশাপাশি "দুর্ভাগ্যক্রমে" ক্রিপ্টো "মডিউল (এটি কী তা নিশ্চিত নয়) নামে ইনস্টল করার সাথে সম্পর্কিত বলে মনে হচ্ছে।

ফিক্সটি পাইপ দিয়ে ক্রিপ্টো এবং পাইক্রিপ্টো উভয়কেই সরিয়ে ফেলছে বলে মনে হচ্ছে:

sudo pip uninstall crypto
sudo pip uninstall pycrypto

এবং পাইক্রিপ্টো পুনরায় ইনস্টল করা:

sudo pip install pycrypto

আমি যখন এমন কিছু করি তখন এটি প্রত্যাশার মতো কাজ করে:

from Crypto.Cipher import AES

উইন্ডোজ + উগ্রান্টে আমার জন্য উবুন্টু 14.04 64-বিট এবং পাইথন 3
জুহা আনটিনেন


31

ম্যাকের উপর ... আপনি যদি এটির মধ্যে চলে যান .. আপনি পরিবর্তে ক্রিপ্টো আমদানি করতে পারেন কিনা তা দেখার চেষ্টা করবেন?

যদি তাই হয় .. প্যাকেজের নাম ইস্যু Cবনাম c। এটি পেতে .. কেবল আপনার স্ক্রিপ্টের শীর্ষে এই লাইনগুলি যুক্ত করুন।

import crypto
import sys
sys.modules['Crypto'] = crypto

আপনারা জানেন যে সাফল্যের সাথে প্যারামিকো আমদানি করতে সক্ষম হওয়া উচিত।


এটি সঠিক নয়, এখানে কিছুটা পড়ুন: পাইক্রিপ্টোডোম.ড্রেডহেডসকস.আইও
ইগোর মিশেভ

গ্রেট! ধন্যবাদ!!! ;)
ভিক্টর ভসমোটটর মনিকা

24

আনইনস্টল করে cryptoএবং pycryptoআমার উপর কাজ করে। তারপরে কেবল ইনস্টল করুন pycrypto:

pip uninstall crypto 
pip uninstall pycrypto 
pip install pycrypto

1
ডকস থেকে এই সমাধানটির ব্যাখ্যা এখানে দেওয়া হয়েছে: পাইক্রিপডোডোম.ড্রেডহেডসকস.আইও
ইলিয়া ওরসন

21

আমি সমাধান খুঁজে পেয়েছি। ইস্যুটি সম্ভবত সংবেদনশীলতার ক্ষেত্রে (উইন্ডোজে)।

কেবল ফোল্ডারের নাম পরিবর্তন করুন:

  • C:\Python27\Lib\site-packages\crypto
  • প্রতি: C:\Python27\Lib\site-packages\Crypto

পাইক্রিপ্টো ইনস্টল করার পরে এইভাবে ফোল্ডারের নামকরণ করা হয়েছিল: এখানে চিত্র বর্ণনা লিখুন

আমি এটিকে পরিবর্তন করেছি: এখানে চিত্র বর্ণনা লিখুন

এবং এখন নিম্নলিখিত কোডটি সূক্ষ্মভাবে কাজ করে: এখানে চিত্র বর্ণনা লিখুন


এটি কাজ করে তবে সমস্তর মধ্যে অনেকগুলি প্যাকেজ নামকরণ করা দরকার।
ব্যবহারকারী 1288329

21

সতর্কতা: pycryptoআর ব্যবহার করবেন না !

আপনি পড়তে পারেন এই পৃষ্ঠার , ব্যবহার pycryptoহয় না আর নিরাপদ:

পাইক্রিপ্টো ব্লক_টেম্প্লেস.সি.এল.এল.ইনউ ফাংশনে হিপ-ভিত্তিক বাফার ওভারফ্লোতে ঝুঁকিপূর্ণ। এটি দূরবর্তী আক্রমণকারীদের অজগর অ্যাপ্লিকেশনটিতে স্বেচ্ছাসেবক কোড চালানোর অনুমতি দেয়। এটি সিভিই -2013-7459 নম্বর বরাদ্দ করা হয়েছিল ।

পাইক্রিপ্টো সেই দুর্বলতার কোনও সমাধান ছাড়েননি এবং জুন 20, 2014 থেকে এই প্রকল্পে কোনও প্রতিশ্রুতিবদ্ধ হয়নি।

সমাধান: পাইথন 3 ব্যবহার করুন এবং pycryptodome!

টি এল; ডিআর: pip3 install pycryptodome

অন্যান্য সংস্করণ cryptoবা pycryptoপ্রথমে আনইনস্টল করার বিষয়টি নিশ্চিত করুন ।

নতুন ভার্চুয়াল পরিবেশ স্থাপন করা হচ্ছে

ভার্চুয়াল পরিবেশ এবং সবকিছু সেটআপ করতে নিম্নলিখিত কমান্ডগুলি ব্যবহার করুন:

# install python3 and pip3
sudo apt update
sudo apt upgrade
sudo apt install python3
sudo apt install python3-pip

# install virtualenv
pip3 install virtualenv

# install and create a virtual environment in your target folder
mkdir target_folder
cd target_folder
python3 -m virtualenv .

# now activate your venv and install pycryptodome
source bin/activate
pip3 install pycryptodome

# check if everything worked: 
# start the interactive python console and import the Crypto module
# when there is no import error then it worked
python
>>> from Crypto.Cipher import AES
>>> exit()

# don't forget to deactivate your venv again
deactivate

আরও তথ্যের জন্য, পাইক্রিপ্টোডোম.অর্গ


1
যদি আপনার কাছে বর্তমানে ক্রিপ্টো বা পাইক্রিপ্টো ইনস্টলশন রয়েছে তবে আপনাকে প্রথমে এগুলি আনইনস্টল করতে হবে।
জিনো মেম্পিন

20

কমান্ড টাইপ করুন:

sudo pip install pycrypto

লিনাক্স সলিউশন (ডিবিয়ান) অনুসন্ধান করার সময় আমি এটি পেয়েছি। নিম্নলিখিতগুলি আমার জন্য কাজ করেছে: ডেবিয়ান লেনিতে পাইথন মডিউল "পাইক্রিপ্টো" ইনস্টল করতে পারবেন না
সিলভারলাইটফক্স

8

আপনি যদি রেডহ্যাট, ফেডোরা, সেন্টো ব্যবহার করছেন:

sudo yum install pycrypto

আমার ক্ষেত্রে আমি পাইপ ব্যবহার করে এটি ইনস্টল করব না


রেফারেন্সযুক্ত এই প্যাকেজটির নামটি কি এখন আপনার মনে আছে? "পাইক্রিপ্টো"
k1DBLITZ

8

'ImportError: No module named Crypto.Cipher'ওএসএক্স 10.8.5 (মাউন্টেন সিংহ) এর জিএই বয়লারপ্লেট সহ গুগল অ্যাপেঞ্জাইনলানচার (সংস্করণ> 1.8.X) ব্যবহার করার পরেও আমার একই সমস্যা হয়েছে। পাইথন ২.7 রানটাইম সহ গুগল অ্যাপ ইঞ্জিন এসডিকে, পাইক্রিপ্টো ২.6 প্রস্তাবিত সংস্করণ। আমার জন্য যে সমাধানটি কাজ করেছিল তা হ'ল ...

1) পাইক্রিপ্টো 2.6 উত্সটি এটিকে অন্য কোথাও ডাউনলোড করুন ( ~/Downloads/pycrypto26)

উদাহরণস্বরূপ, গিট ক্লোন https://github.com/dlitz/pycrypto.git

2) cd( cd ~/Downloads/pycrypto26) তখন

3) GAE ফোল্ডারে ম্যানুয়ালি পাইক্রিপ্টো 2.6 ইনস্টল করতে পূর্বের ফোল্ডারের ভিতরে নীচের টার্মিনাল কমান্ডটি কার্যকর করুন।

sudo python setup.py install --install-lib /Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine


প্রকল্পের
মূলটিতে

ইয়োসেমাইট ব্যবহারকারীর পক্ষে এটি দুর্দান্ত উত্তর!
কিউংহুন কিম

@ লাজারোস দিনাকিস: এই পৃষ্ঠায় উল্লিখিত সমস্ত সমাধানগুলির মধ্যে এটিই সমাধান কাজ করেছে। ধন্যবাদ
gaurav414u

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

7

আপনি যদি একটি MacOS, পুনঃনামকরণ liberal এর সংক্ষিপ্ত রূপ ফোল্ডারের lib/python3.7/site-packages/cryptoজন্যlib/python3.7/site-packages/Crypto


এটি অন্য সমাধানগুলির বিপরীতে আমার পক্ষে কাজ করেছিল। আমি ম্যাকও
ইউজার 3527975

এখানে সমাহিত করা সমাধানটি যা আমার পক্ষে কাজ করেছে (উইন্ডোজ 10 এ)
জোসেফ


3

এটি পাইপের মাধ্যমে ইনস্টল করা পাইথন মডিউলগুলি লোড করার সমস্যা হতে পারে। এই উত্তরের উল্লেখ করুন সাইট-প্যাকেজ ডিরেক্টরি থেকে পাইপের মাধ্যমে ইনস্টল করা পাইথন মডিউলগুলি লোড করা যায় না এবং এর মতো কিছু চেষ্টা করে দেখুন

python -m pip install pycrypto

3

আমার জন্য কাজ করেছেন (উবুন্টু 17.10)

ভেনভি অপসারণ এবং অজগর v3.6 দিয়ে আবার তৈরি করা

pip3 install PyJWT
sudo apt-get install build-essential libgmp3-dev python3-dev
pip3 install cryptography
pip3 install pycryptodome
pip3 install pycryptodomex

পাইক্রিপ্টো অবচিত করা হয়েছে, এতে সমস্যা ছিল, পাইক্রিপ্টোডোম ব্যবহৃত হয়েছিল


2

প্রথম অক্ষরের কেসটিকে উপরের দিকে পরিবর্তন করে আমি এই সমস্যাটি সমাধান করি। ক্রিপ্টো থেকে সিফারটি নিশ্চিত করুন C


2

CentOS 7.4 এর জন্য আমি প্রথমে পাইপ ইনস্টল করেছিলাম এবং তারপরে পাইপ ব্যবহার করে পাইক্রিপ্টো:

> sudo yum -y install python-pip 
> sudo python -m pip install pycrypto

2

আজ from Crypto.Cipher import AESঅবধি, আমদানি করার সময় আমার একই সমস্যা হচ্ছে যখন আমি পাইক্রিপ্টো কয়েকবার ইনস্টল / পুনরায় ইনস্টল করেছি তখনও। এটি শেষ কারণ পাইপটি পাইথন 3 এ ডিফল্ট হয়েছিল।

~ pip --version
pip 18.0 from /usr/local/lib/python3.7/site-packages/pip (python 3.7)

পাইপ 2 দিয়ে পাইক্রিপ্টো ইনস্টল করার ফলে এই সমস্যাটি সমাধান করা উচিত।


1

উইন্ডোজ 7 এর জন্য:

আমি এই ত্রুটিটি পেয়েছি "মডিউল ত্রুটি ক্রিপো.সিফার আমদানি এইএস"

উইন্ডোজে পাইক্রিপ্টো ইনস্টল করতে,

কমান্ড প্রম্পটে এটিকে চেষ্টা করুন,

পাথ সেট করুন = সি: \ পাইথন 27 \ স্ক্রিপ্টস (যেমন পথ যেখানে ইজি_ইনস্টল রয়েছে)

তারপরে নিম্নলিখিতটি কার্যকর করুন,

ইজি_ইনস্টল পাইক্রিপ্টো

উবুন্টুর জন্য:

এটা চেষ্টা কর,

" Https://pypi.python.org/pypi/pycrypto থেকে পাইক্রিপ্টো ডাউনলোড করুন "

তারপরে আপনার টার্মিনালটি ব্যবহার করে ডাউনলোড করা পথে আপনার বর্তমান পথটি পরিবর্তন করুন:

উদাহরণস্বরূপ: মূল @ xyz- ভার্চুয়াল-মেশিন: ~ / পাইক্রিপ্টো -২.6.১ #

তারপরে টার্মিনালটি ব্যবহার করে নিম্নলিখিতটি প্রয়োগ করুন:

পাইথন সেটআপ.পিপি ইনস্টল করুন

এটা আমার জন্য কাজ। আশা সবার জন্য কাজ করে ..


1

এই সমস্যাটি সি ++ সংকলক (পাইথন 27 বা পাইথন 26) ইনস্টল করে স্থির করা যেতে পারে। এটি মাইক্রোসফ্ট https://www.microsoft.com/en-us/download/details.aspx?id=44266 থেকে ডাউনলোড করুন এবং কমান্ডটি পুনরায় রান করুন: pip install pycryptoআপনি যখন প্রক্রিয়াটি শেষ করেন তখন গুই ওয়েব অ্যাক্সেস চালানোর জন্য easy_install.exe


1

হতে পারে আপনার এটি করা উচিত: পাইক্রিপ্টোডোম == 3.6.1 এটি প্রয়োজনীয়তাগুলিতে যুক্ত করুন t txt এবং ইনস্টল করুন, যা ত্রুটি প্রতিবেদনটি অপসারণ করা উচিত। এটা আমার জন্য কাজ করে!



1

আচ্ছা এই অদ্ভুত প্রদর্শিত হতে পারে কিন্তু ইনস্টল করার পরে pycryptoবা pycryptodome, আমরা ডিরেক্টরি নাম আপডেট করতে চাই cryptoথেকে Cryptolib/site-packages

উল্লেখ


0

আমি ৩.7 এর সাথে আছি। আমি ক্রিপ্টো ইনস্টল করার চেষ্টা করার পরেও সমস্যাটি রয়ে গেছে। এবং পাইক্রিপ্টো কেবল আমার ক্ষেত্রে ব্যর্থ। সুতরাং শেষ পর্যন্ত আমার বিল্ডটি নীচের প্যাকেজটির মাধ্যমে পাস হয়েছে: পাইপ ইনস্টল পাইক্রিপডোডোম

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