8

这听起来像是一个关于 SF 的重复问题,但我还没有找到明确的答案。所以。我使用“setup.py install”命令安装了 Paramiko 1.7,在运行 demo.py 程序时,我收到了这个错误:

 Traceback (most recent call last):
  File "C:\Documents and Settings\fixavier\Desktop\paramiko-1.7\demos\demo.py", line 33, in <module>
    import paramiko
  File "C:\Python26\lib\site-packages\paramiko\__init__.py", line 69, in <module>
    from transport import randpool, SecurityOptions, Transport
  File "C:\Python26\lib\site-packages\paramiko\transport.py", line 32, in <module>
    from paramiko import util
  File "C:\Python26\lib\site-packages\paramiko\util.py", line 31, in <module>
    from paramiko.common import *
  File "C:\Python26\lib\site-packages\paramiko\common.py", line 99, in <module>
    from Crypto.Util.randpool import PersistentRandomPool, RandomPool
ImportError: No module named Crypto.Util.randpool

即使在安装 PyCrypto 2.1 之后,我也会收到此错误。在运行 test.py(安装附带)时,我收到以下错误 -

    Traceback (most recent call last):
  File "C:\Documents and Settings\fixavier\Desktop\pycrypto-2.0.1\pycrypto-2.0.1\test.py", line 18, in <module>
    from Crypto.Util import test
  File "C:\Documents and Settings\fixavier\Desktop\pycrypto-2.0.1\pycrypto-2.0.1\build/lib.win32-2.6\Crypto\Util\test.py", line 17, in <module>
    import testdata
  File "C:\Documents and Settings\fixavier\Desktop\pycrypto-2.0.1\pycrypto-2.0.1\test\testdata.py", line 450, in <module>
    from Crypto.Cipher import AES
ImportError: cannot import name AES

毕竟我没有信心继续安装 AES,因为我知道我可能会得到另一个 ImportError!请指教。是安装方式有问题吗?

4

12 回答 12

16

看起来您的 pycrypto 安装已损坏或未安装。

尝试在此处获取 python2.6 安装程序的 pycrypto 并在安装后重试。

http://www.voidspace.org.uk/python/modules.shtml#pycrypto

于 2010-06-04T07:49:34.520 回答
4

我尝试了 Vijay 的方法,但它不起作用。

我使用'http://kmdarshan.com/blog/?p=3208'上的方法,它有效:

  1. 转到http://twistedmatrix.com/trac/wiki/Downloads并下载适用于 windows/python2.5 的 pycrypto 包 .exe。这是运行 paramiko 所需要的。

  2. 接下来,从http://www.lag.net/paramiko/下载 paramiko 包。

  3. 将 paramiko 解压到一个临时文件夹,最好解压到安装 python 的文件夹。

  4. 进入 paramiko 的文件夹。

  5. 打开命令提示符并确保您已将 python 设置为环境变量。

  6. 运行此命令 python setup.py install

  7. 您将获得一系列编译行。只要确保你没有任何错误。如果您有任何错误,您将需要重新编译它们。

  8. 只要确保一切正常,在您的程序中导入 paramiko 并查看。

  9. 仅供参考:paramiko 用于 ssh..等等。

于 2011-09-28T08:35:26.553 回答
3
  1. 下载适用于 windows 的 paramiko。您将获得 zip 文件:www.lag.net/paramiko/

  2. 要构建它,您需要依赖包 pycrypto。再次记住,您将需要与 Python 匹配的 pycrypto 版本。这是 Windows 的内置版本,因此无需安装。http://www.voidspace.org.uk/python/modules.shtml#pycrypto

  3. 您可以通过下载 setuptools 来进行 easy_install,但我遇到了一些问题,所以我选择下载 MinGW 工具。这又是一次安装,不需要构建。http://sourceforge.net/projects/mingw/files/Automated%20MinGW%20Installer/mingw-get-inst/mingw-get-inst-20110316/

  4. 在 Windows 机器上安装 pycrypto 和 MinGW 后,只需浏览到从 zip 文件中提取 paramiko 模块的文件夹并发出以下命令:

    python setup.py build --compiler=mingw32 bdist_wininst

多田!你已经准备好在你的 Windows 机器上使用 Python 使用 ssh。

于 2011-03-30T22:02:03.063 回答
2

我已成功将 paramiko 安装到 64 位 Windows 7 上:

  1. 安装Python2.7
  2. 从以下网址下载 64 位 PyCrypto 安装包:http ://www.dragffy.com/posts/ython-pycrypto-2-4-1-32-and-64-bit-windows-32x64-amdintel-installers
  3. 从以下网址下载 paramiko 包:http ://www.lag.net/paramiko/
  4. 提取 paramiko 包
  5. 从提取的 paramiko 包中启动命令行终端,运行“python setup.py install”
于 2012-09-26T06:41:42.053 回答
1

我想在 Windows XP 上安装 Paramiko for Python 3.3.2。我按照这里的说明

在我为我的 Python 版本下载列表中的所有程序后,Paramiko 启动没有问题。

  1. 安装 python-2.7.3.amd64.msi
  2. 安装pycrypto-2.6.win-amd64-py2.7.exe
  3. 安装 setuptools-1.4.2.win-amd64-py2.7.exe
  4. 安装 pip-1.4.1.win-amd64-py2.7.exe
  5. 下载并解压https://github.com/paramiko/paramiko/archive/master.zip
于 2014-05-14T07:54:14.880 回答
1

实际问题似乎不是 Crypto 安装损坏,而是略有不同。在 Windows 上使用 easy_install 安装 paramiko 和 crypto 后,我确实安装了 crypto,但没有安装 Crypto。我安装了 PyCrypt 包(由于在安装 Visual Studio Express 之前我没有 C 编译器,因此出现错误)

于 2014-07-01T11:27:14.693 回答
0

您下载的 Crypto 包似乎没有 AES...

您应该尝试执行以下操作:

import Crypto
import Crypto.Util
import Crypto.Cipher

如果其中任何一个失败,那么您仍然需要确保安装了 pycrypto(请参阅此处S.Mark 的链接),否则 Paramiko 可能不依赖于 AES(即使有一个测试)

于 2010-06-04T07:52:31.957 回答
0

PyCrypto 似乎使用了一个 c 编译器(它固有地存在于 Linux 系统 - gcc 上)。此外,PyCrypto readme.txt 文件的某处说,它需要先“构建”,然后在 Linux 上进行“安装”,我先构建它,然后在其上运行“安装”命令并成功安装。

于 2010-06-22T08:13:39.890 回答
0

我搜索了很长时间以寻找解决此问题的方法。我正在运行 Windows 7 64 位和 python 2.7。以上解决方案都不适合我。

这个做了

下载 Microsoft SDK 时不要忘记包含 C++ 编译器,默认情况下未选中。

我下载了 pycrypto 2.5 源代码进行编译和 paramiko 2.3,一切正常。

于 2012-01-19T23:32:56.987 回答
0

这是一个非常准确的答案:

第 1 步:转到https://github.com/paramiko/paramiko

第二步:下载压缩包,解压

第 3 步:进入文件夹并运行python setup.py install

你完成了!

于 2013-07-25T14:14:39.573 回答
0

我在我的 Mac 上遇到了类似的问题,我解决它的方法是将“crypto”目录重命名为“Crypto”。我已经安装了 paramiko 和 ssh。他们现在都工作得很好。但是,这可能对某些人有效,也可能无效,但这只是解决此问题的一个简单想法。

将加密重命名为 Crypto

于 2014-11-21T03:14:15.017 回答
0

你试一试

pip install paramiko

如果这显示错误,那么

pip install cryptography
pip install paramiko
于 2017-03-23T06:25:38.810 回答