V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
miaoge520
V2EX  ›  Python

ImportError: No module named Crypto.Cipher 这个怎么解决?救救孩子吧

  •  
  •   miaoge520 · 2022-03-27 12:30:56 +08:00 · 2900 次点击
    这是一个创建于 732 天前的主题,其中的信息可能已经有所发展或是发生改变。

    这个是什么原因呢?是 python 问题嘛?真的我有点挠头了,上截图吧

    https://i.ibb.co/dj3GydD/QQ-20220327122403.png

    我也使用使用 pip 命令安装以下依赖库 pip install pycryptodome pip install crypto pip install pycrypto

    最后看了一下,crypto 这个文件夹也是大写的,

    https://i.ibb.co/sjMgpMK/QQ-20220327122729.png

    大佬们有遇到过这个问题嘛?😢😢

    12 条回复    2022-03-27 21:36:14 +08:00
    zhangshine
        1
    zhangshine  
       2022-03-27 13:08:01 +08:00
    用了 venv ?是不是忘了 source 一下
    miaoge520
        2
    miaoge520  
    OP
       2022-03-27 13:43:41 +08:00
    @zhangshine 没有用 venv
    weeevv
        3
    weeevv  
       2022-03-27 13:51:02 +08:00
    !pip install /workdir/rsa2/pycryptodome-3.14.1-cp35-abi3-manylinux2010_x86_64.whl

    import json

    from Crypto.PublicKey.RSA import RsaKey
    from Crypto.PublicKey import RSA
    from Crypto.Cipher import PKCS1_OAEP,PKCS1_v1_5
    from Crypto.Math.Numbers import Integer

    直接安装 pycryptodome 就行,别安装 pycrypto 试试。
    Gorgine
        4
    Gorgine  
       2022-03-27 14:38:50 +08:00
    pip install pycryptodome
    miaoge520
        5
    miaoge520  
    OP
       2022-03-27 15:16:10 +08:00
    @weeevv 不行,试过了
    ec0
        6
    ec0  
       2022-03-27 16:04:18 +08:00
    我试了一下
    直接安装 pycryptodome , 运行 from Crypto.Cipher import AES 成功
    然后安装 pycrypto , 运行 from Crypto.Cipher import AES 报错
    然后卸载 pycrypto , 运行 from Crypto.Cipher import AES 报错
    然后卸载 pycryptodome 再安装 pycryptodome , 运行 from Crypto.Cipher import AES 成功

    建议卸载 pycrypto 和 pycryptodome ,再安装 pycryptodome
    mikewang
        7
    mikewang  
       2022-03-27 17:42:06 +08:00
    曾经遇到过这个问题,不知道原因是否相同。

    检查一下路径名称是不是 .\Lib\site-packages\crypto
    如果是“crypto”,将首字母改为大写“Crypto”
    mikewang
        8
    mikewang  
       2022-03-27 17:51:24 +08:00
    @mikewang #7
    抱歉没仔细看描述,如果不是大小写问题:

    第一,确定 pip 是 pip3 ,不要安装到 python2 的环境里去了;

    第二,卸载可能引起冲突的库
    pip uninstall crypto
    pip uninstall pycrypto
    pip uninstall pycryptodome

    第三,重新安装 pycryptodome
    pip install pycryptodome
    dcsuibian
        9
    dcsuibian  
       2022-03-27 17:56:17 +08:00
    在你的 ufonet 文件夹中,是否存在 crypto.py 文件?
    pengtdyd
        10
    pengtdyd  
       2022-03-27 20:09:17 +08:00
    from Crypto.Cipher import ARC4
    是不是这样用报错的
    miaoge520
        11
    miaoge520  
    OP
       2022-03-27 21:35:30 +08:00 via Android
    @mikewang 已经装 kali 了,现在好了
    miaoge520
        12
    miaoge520  
    OP
       2022-03-27 21:36:14 +08:00 via Android
    @mikewang 估计应该是装到 python2 里面去了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1064 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 19:01 · PVG 03:01 · LAX 12:01 · JFK 15:01
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.