1.安装python
2.安装pip: easy_install pip
3.安装selenium:pip install -U selenium
案例一 跨机操作
baas/executeShell2.py
1.主机地址 2.用户名 3.密码 4.路径 5.shell命令(需要用单引号阔起来) 6.执行命令后休眠时间
# -*- coding: utf-8 -*-
import os
import sys
import time
import re
try:
import pxssh
except:
from pexpect import pxssh
import getpass
def insertOne(strHostIP, strUserName, strPassword, path, shell, sleeptime):
msg = ""
try:
# 调用构造函数,创建一个 pxssh 类的对象.
s = pxssh.pxssh()
# 利用 pxssh 类的 login 方法进行 ssh 登录,原始 prompt 为'$' , '#'或'>'
s.login(strHostIP, strUserName, strPassword, original_prompt='[$#>]', login_timeout=10, port=36000)
strCmd = "cd %s" %(path)
print(strCmd)
s.sendline(strCmd)
s.prompt()
# 发送命令
strCmd = "%s" %(shell)
print(strCmd)
s.sendline(strCmd)
# 增加超时时长
time.sleep( int(sleeptime) )
# 匹配 prompt,prompt超时时长默认30s
s.prompt()
# 将 prompt 前所有内容打印出,即命令 的执行结果.
msg = s.before
s.sendline('exit')
p = msg.find('\n',1)
msg= msg[p+1:]
msg = msg.replace("\n","")
except pxssh.ExceptionPxssh, e:
msg = str(e)
return msg
if __name__=="__main__":
if len(sys.argv) < 4:
print("参数错误: 1.主机地址 2.用户名 3.密码")
sys.exit(1)
sleeptime = "0"
strHostIP = sys.argv[1]
strUserName = sys.argv[2]
strPassword = sys.argv[3]
path = sys.argv[4]
shell = sys.argv[5]
sleeptime = sys.argv[6]
print("TEST")
print("RESULT="+insertOne(strHostIP, strUserName, strPassword, path ,shell, sleeptime))