在Windows上安装paramiko
这听起来可能是个重复的问题,但我找不到明确的答案。所以,我用“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(导入错误)!请给点建议。是安装方式有问题吗?
12 个回答
首先,下载适用于Windows的paramiko。你可以在这里找到压缩文件:www.lag.net/paramiko/
要安装它,你需要一个叫做pycrypto的依赖包。记得要下载与你的Python版本匹配的pycrypto。这是为Windows准备的版本,所以不需要额外安装。你可以在这里找到pycrypto的下载链接:http://www.voidspace.org.uk/python/modules.shtml#pycrypto
你可以通过下载setuptools来简单安装,但我遇到了一些问题,所以我选择下载MinGW工具。这也是一个安装包,不需要额外构建。下载链接在这里:http://sourceforge.net/projects/mingw/files/Automated%20MinGW%20Installer/mingw-get-inst/mingw-get-inst-20110316/
当你在Windows上安装好pycrypto和MinGW后,找到你从压缩文件中解压出来的paramiko模块的文件夹,然后输入这个命令:
python setup.py build --compiler=mingw32 bdist_wininst
好了!你现在可以在Windows上使用Python进行ssh操作了。
我试过Vijay的方法,但没成功。
我用的是这个方法:'http://kmdarshan.com/blog/?p=3208',它有效:
首先,去 http://twistedmatrix.com/trac/wiki/Downloads 下载适用于windows/python2.5的pycrypto包的.exe文件。这是运行paramiko所必需的。
接下来,从 http://www.lag.net/paramiko/ 下载paramiko包。
把paramiko解压到一个临时文件夹,最好是解压到Python安装的文件夹里。
进入paramiko的文件夹。
打开命令提示符,确保你的环境变量里有Python。
运行这个命令:python setup.py install
你会看到一系列编译的输出。只要确保没有错误就行。如果有错误,你需要重新编译。
确保一切正常后,在你的程序里导入paramiko,看看能不能用。
顺便说一下:paramiko是用来做ssh等操作的。
看起来你的pycrypto安装有问题,或者根本没有安装。
你可以在这里找到适合python2.6的pycrypto安装包,安装后再试试。