Python中使用SSH需要用到OpenSSH,而OpenSSH依赖于paramiko模块,而paramiko模块又依赖于pycrypto模块,因此要在python中使用SSH,我们需要先安装pycrypto模块,然后再安装paramiko模块。下面话不多说了,来一起看看详细的介绍:

No.1 pycrypto模块安装:

1.下载pycrypto源码

官网:https://www.dlitz.net/software/pycrypto/ github:https://github.com/dlitz/pycrypto

下载源码解压,win+R运行cmd,进入解压文件夹

python setup.py install

如果没有报错误,看到

running install_egg_info

恭喜你,不用踩坑,直接可以关闭这篇东西去愉快地写代码了。。。

2.安装过程中显示unable to find vcvarsall.bat

这是window环境下安装模块比较常见的问题,这时候你百度的话大部分文章就会告诉你下载vs,python2的话安装vs2010,python3的话安装vs2013
重点!!!!!!!!
不要着急去安装vs,这东西一安装就是好几个小时,在这里我对vs装了卸,卸了装浪费了一天半的时间。
python有个深坑!不同的python版本对应不同的vs版本,具体对应的版本在python所在的路径下\Lib\distutils_msvccompiler.py
比如我的路径是E:\Python\Python36\Lib\distutils_msvccompiler.py
打开找到def _find_vcvarsall(plat_spec)

clang安装python3 python3安装paramiko_环境变量

这里的version 就是对应的vs版本号,如果你跟我一样是python3.6的话应该这里是14,之前就是看到其他的博客,没有查看这里的版本号就装,先是装了vs2010,然后装2013,再卸了装了对应版本号的vs2015,其中vs的版本号对应关系如下:

msvs2005版本号为8.0,对应环境变量VS80COMNTOOLS
msvs2008版本号为9.0,对应环境变量VS90COMNTOOLS
msvs2010版本号为10.0,对应环境变量VS100COMNTOOLS
msvs2012版本号为11.0,对应环境变量VS110COMNTOOLS
msvs2013版本号为12.0,对应环境变量VS120COMNTOOLS
msvs2015版本号为14.0,对应环境变量VS140COMNTOOLS

3.安装对应版本的msvs(Microsoft Visual Studio)

如果是Visual Studio 2015,提供个百度经验上百度网盘给大家
http://pan.baidu.com/s/1eSueWLG 如果不需要用vs进行开发的话,装community免费版就可以了,没必要纠结专业版啥的
安装过程中要注意,建议安装的时候选自定义(截图来自百度经验,因为已经安装了打开之后有点不太一样)

clang安装python3 python3安装paramiko_python_02

记得勾选VC++2015和Python Tools。Web Deveolper Tools的话最好也勾上吧。
但我的安装过程没这么顺利,泪奔~

记住一定要完全安装compile,才能用我第一次安装有一个没装上,然后怎么都不能用。后来又卸载从新装,终于好了。心累....另外安装时间超长,卸载时间超长.....

再次进入pycryto的解压文件夹python setup.py install 仍然显示

building ‘Crypto.Random.OSRNG.winrandom‘ extension

4.解决building ‘Crypto.Random.OSRNG.winrandom‘ extension

  1. 添加VC环境变量,设置用户环境变量,这里划重点!!!是用户环境变量,不是系统环境变量

clang安装python3 python3安装paramiko_python_03

变量名:VCINSTALLDIR
(变量值为vs安装路径下的VC,默认是这个)
变量值:C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC
2. win+R运行cmd,执行命令set CL=/FI”%VCINSTALLDIR%\INCLUDE\stdint.h” %CL%

  1. 再次进入pycryto的解压文件夹python setup.py install ,看到

clang安装python3 python3安装paramiko_版本号_04

能显示running install_egg_info 就是安装成功了。

安装完成后,执行如下操作,没有报错,则表示安装成功; 注意导入模块时的大小写,如果首字母写成小写,会出错!!!

>>> import crypto #首字母写成小写,会出错 
Traceback (most recent call last): 
 File "<pyshell#0>", line 1, in <module> 
 import crypto 
ImportError: No module named crypto 
>>> import Crypto 
>>>

第一步完成了,终于!!!!

No.2 安装pip、setuptools(已安装请跳过)

安装pip

下载pip安装包

https://pypi.python.org/pypi/pip#downloads

clang安装python3 python3安装paramiko_环境变量_05

下载后安装

下载后解压,通过CMD终端进入解压的目录。通过以下命令安装。

python setup.py install

设置环境变量

将D:\Program Files (x86)\Python27\Scripts;添加至PATH「注意格式并替换你自己的python安装目录」

验证安装

clang安装python3 python3安装paramiko_clang安装python3_06

安装setuptools

下载setuptools安装包

https://pypi.python.org/pypi/setuptools#downloads

clang安装python3 python3安装paramiko_环境变量_07

下载后安装

下载后解压,通过CMD终端进入解压的目录。
通过命令 python setup.py install 自动安装

设置环境变量

方法同上方安装pip

验证安装

easy_install virtualenv

No.3安装paramiko模块

cmd下执行:

pip install paramiko

我第一次执行卡住了,后来又执行一次OK,吓死我了!!

安装完成后,执行如下,不报错,则表示安装成功:

终于全部完成了,一个先难后易的过程,还好我挺过来了。希望对各位有帮助。