这可能听起来像是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! 请指教。它的安装方式有问题吗?
看起来像你的pycrypto安装已损坏或未安装。
尝试在python2.6安装程序中获取pycrypto,然后在安装后再试一次。
我尝试了Vijay的方法,但它不起作用。
我使用'http://kmdarshan.com/blog/?p=3208'上的方法,它的作品:
转到http://twistedmatrix.com/trac/wiki/Downloads并下载pycrypto软件包.exe for windows / python2.5。 这是运行paramiko所需要的。
将paramiko解压缩到一个临时文件夹,如果你把它解压到安装了python的文件夹,会更好。
进入paramiko文件夹。
打开命令提示符并查看它是否已将python设置为环境变量。
运行这个命令python setup.py install
你会得到一系列的编译。 只要确保你没有任何错误。 如果你有任何错误,你将需要重新编译它们。
只要确保你的程序中的所有东西都可以导入paramiko就可以了。
供参考:paramiko用于ssh ..等等。
下载paramiko的Windows。 你得到的zip文件:www.lag.net/paramiko/
要构建它,你需要依赖包pycrypto。 请记住,您需要为您的Python使用pycrypto的匹配版本。 这是Windows的内置版本,因此不需要安装。 http://www.voidspace.org.uk/python/modules.shtml#pycrypto
你可以通过下载setuptools来做一个easy_install,但是我遇到了一些问题,所以我选择了下载MinGW工具。 这又是一个安装,不需要构建。 http://sourceforge.net/projects/mingw/files/Automated%20MinGW%20Installer/mingw-get-inst/mingw-get-inst-20110316/
一旦你的windows机器上安装了pycrypto和MinGW,只要浏览到你从zip文件中解压paramiko模块的文件夹,然后发出这个命令:
python setup.py build –compiler = mingw32 bdist_wininst
TADA! 你都设置为使用Python的Windows机器上使用SSH。
我已经成功安装了64位Windows 7上的paramiko:
我想在Windows XP上安装Paramiko for Python 3.3.2。 我按照这里的指示
在我下载了Python版本的列表中的所有程序后,Paramiko开始没有问题。
实际的问题似乎并不是破解的Crypto安装,而是一个稍微不同的安装。 在Windows上安装paramiko和加密easy_install后,我确实安装了加密,但没有加密。 我安装了PyCrypt软件包(因为在安装visual studio express之前我没有C编译器,所以发生错误)
看来您下载的Crypto软件包没有AES …
你应该尝试做以下事情:
import Crypto import Crypto.Util import Crypto.Cipher
如果其中的任何一个失败了,那么你仍然需要确保安装了pycrypto(参见S.Mark的链接),否则Paramiko可能不依赖于AES(即使有测试)
看来PyCrypto使用一个C编译器(它本身就存在于Linux系统上 – gcc)。 此外,在PyCrypto readme.txt文件的某个地方说,它需要先“构建”,然后再进行“安装”。在Linux上,我先构建它,然后运行“安装”命令并成功安装。
我搜索了很长时间寻找解决这个问题。 我正在运行Windows 7 64位和Python 2.7。 上述解决方案都不适合我。
这一个
在下载Microsoft SDK时,请不要忘记包含C ++编译器,默认情况下不会选中它。
我下载了pycrypto 2.5源码来做编译和paramiko 2.3,事情效果很好。
这是一个非常精确的答案:
第1步:转到https://github.com/paramiko/paramiko
第2步:下载zip文件,并提取它
第3步:进入文件夹并运行python setup.py install
你完成了!
我在我的Mac上有类似的问题,我解决这个问题的方法就是把“crypto”目录重命名为“Crypto”。 我已经安装了paramiko和ssh。 他们现在都工作得很好。 然而,这可能会或可能不适用于某些人,但这只是解决这个问题的一个简单的想法。
你试一试
pip install paramiko
如果这显示错误,那么
pip install cryptography pip install paramiko