ImportError: нет модуля с именем Crypto.Шифр
когда я пытаюсь запустить app.py (Python 3.3, PyCrypto 2.6) my virtualenv продолжает возвращать ошибку, указанную выше. Мой оператор импорта просто from Crypto.Cipher import AES
. Я искал дубликаты, и вы можете сказать, что есть некоторые, но я пробовал решения (хотя большинство из них даже не решения), и ничего не работало.
вы можете увидеть, что файлы как для PyCrypto ниже:
17 ответов:
У меня была такая же проблема (хотя на Linux). Решение было довольно простым - добавить:
libraries: - name: pycrypto version: "2.6"
в моем приложении.файл YAML. Поскольку это работало правильно в прошлом, я предполагаю, что это новое требование.
у меня была такая же проблема на моем Mac при установке с
pip
. Затем я удалилpycrypto
и установил его снова сeasy_install
, например:pip uninstall pycrypto easy_install pycrypto
также, Как прокомментировал Люк: если у вас возникли проблемы с запуском этих команд, обязательно запустите их как admin (sudo)
надеюсь, что это помогает!
я столкнулся с этим на Mac, и, похоже, это связано с тем, что, к сожалению, аналогичный модуль "crypto" (не уверен, для чего это) установлен рядом с pycrypto через pip.
исправление, похоже, удаляет как crypto, так и pycrypto с pip:
sudo pip uninstall crypto sudo pip uninstall pycrypto
и переустановка pycrypto:
sudo pip install pycrypto
Теперь он работает, как ожидалось, когда я делаю что-то вроде:
from Crypto.Cipher import AES
на mac... если вы столкнетесь с этим.. попробуйте посмотреть, если вы можете импортировать крипто вместо этого?
Если это так.. имя пакета-это проблема
C
vsc
. Чтобы обойти это.. просто добавьте эти строки в верхнюю часть вашего скрипта.import crypto import sys sys.modules['Crypto'] = crypto
вы знаете, должны быть в состоянии успешно импортировать парамико.
у меня была такая же проблема
'ImportError: No module named Crypto.Cipher'
, так как с помощью GoogleAppEngineLauncher (версия > 1.8.X) с шаблоном GAE на OSX 10.8.5 (Mountain Lion). В Google App Engine SDK с python 2.7 runtime, pycrypto 2.6 является рекомендуемой версией. Решение, которое сработало для меня было...1) Загрузите источник pycrypto2.6 извлеките его где-нибудь(
~/Downloads/pycrypto26
)например, git clone https://github.com/dlitz/pycrypto.git
2)
cd
(cd ~/Downloads/pycrypto26
) тогда3) выполните следующую команду терминала внутри предыдущей папки для установки pycrypto 2.6 вручную в папке GAE.
sudo python setup.py install --install-lib /Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine
Если вы используете redhat, fedora, centos:
sudo yum install pycrypto
в моем случае я не буду устанавливать его с помощью pip
удаление crypto и pycrypto работает на меня. Тогда установите только pycrypto. pip uninstall crypto pip удалить pycrypto pip install pycrypto
это может быть проблема загрузки модулей python, установленных через pip. См. этот ответ не удается загрузить модули Python, установленные через pip из каталога site-packages и попробовать что-то вроде
python -m pip install pycrypto
Для Windows 7:
Я получил через эту ошибку " Ошибка модуля Crypo.Шифр импорта AES"
чтобы установить Pycrypto в Windows,
попробуйте это в командной строке
Set path=C:\Python27\Scripts (т. е. путь, где находится easy_install)
затем выполните следующие действия,
pycrypto easy_install
Для Ubuntu:
попробуйте это,
Скачать Pycrypto от "https://pypi.python.org/pypi/pycrypto"
затем измените свой текущий путь на загруженный путь с помощью вашего терминала:
например: root@xyz-virtual-machine:~/pycrypto-2.6.1#
затем выполните следующие действия с помощью терминала:
python setup.py установить
Это сработало для меня. Надежда работает для всех..
Я решаю эту проблему, изменив первый буквенный регистр на верхний. Убедитесь, что "от крипто.Шифр импорта AES" не"из крипто.Шифр импорта AES".
эта проблема может быть исправлена путем установки компилятора C++ (python27 или python26). Загрузите его из Microsoft https://www.microsoft.com/en-us/download/details.aspx?id=44266 и повторите команду:
pip install pycrypto
для запуска gui web access, когда вы убиваете процессeasy_install.exe
.
для CentOS 7.4 я сначала установил pip, а затем pycrypto с помощью pip:
> sudo yum -y install python-pip > sudo python -m pip install pycrypto
работал на меня (Ubuntu 17.10)
удаление venv и создание его снова с python v3. 6
pip3 install PyJWT sudo apt-get install build-essential libgmp3-dev python3-dev pip3 install cryptography pip3 install pycryptodome pip3 install pycryptodomex
Pycrypto устарел, имел проблемы с ним, использовал Pycryptodome
На сегодняшний день, у меня такая же проблема при импорте
from Crypto.Cipher import AES
даже я установил/переустановил pycrypto несколько раз. В конечном итоге это потому, что Пип по умолчанию python3.
~ pip --version pip 18.0 from /usr/local/lib/python3.7/site-packages/pip (python 3.7)
установка pycrypo с pip2 должна решить эту проблему.