最近由于一些需求,要搞一下://www.php.cn/wiki/1514.html" target="_blank">python,于是周末搞了搞.要连接服务器,进行一些服务器的操作,于是安装这个Paramiko包,直接

pip install paramiko
登录后复制

结果.报错,最关键的一句是:

error: Unable to find vcvarsall.bat
登录后复制

google一圈.最终找到一种最简单地方法.其他的安装vs.安装MinGW都太复杂了.安装PyCrypto 第三方版因为paramiko依赖PyCrypto,上面那个错就是他报错出来的.安装 PyCrypto第三方版

pip install --use-wheel --no-index --find-links=https://github.com/sfbahr/PyCrypto-Wheels/raw/master/pycrypto-2.6.1-cp35-none-win_amd64.whl pycrypto
登录后复制


安装完成后,再次安装paramiko即可.2.修改nt.py安装完上面的步骤,写一个简单的程序测试下

#-*- coding: utf-8 -*-#!/usr/bin/python import paramikoimport threadingdef ssh2(ip,username,passwd,cmd):
    try:
        ssh = paramiko.SSHClient()
        ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
        ssh.connect(ip,22,username,passwd,timeout=5)        for m in cmd:
            stdin, stdout, stderr = ssh.exec_command(m)
            out = stdout.readlines()            #屏幕输出
            for o in out:
                print(o)
        print('%s\tOK\n'%(ip))
        ssh.close()    except :
        print('%s\tError\n'%(ip))if name=='main':
    cmd = ['find /home/admin/logs/ -mtime +3 -name \'*.log.*\' -exec rm -rf {} \;']#你要执行的命令列表
    username = "admin"  #用户名
    passwd = "password"    #密码
    threads = []   #多线程
    ip = "127.0.0.1"
    print("Begin......")
    a=threading.Thread(target=ssh2,args=(ip,username,passwd,cmd))
    a.start() 
    input()
登录后复制

运行报错.

ImportError: No module named 'winrandom'
登录后复制


找到python3.5的安装目录的

Lib\site-packages\Crypto\Random\OSRNG
登录后复制

的nt.py文件将

import winrandom
登录后复制

改成

from . import winrandom
登录后复制

再次运行ok.非常简单

以上就是windows环境中python3.5下安装paramiko步骤详解的详细内容,更多请关注Work网其它相关文章!

09-14 01:07