python 写一个telenet 的用例

由于测试需要,经常telnet 到一些主机设备什么的,所以用python来写了一段telnet,首先用到的telnetlib 这个库。

# -*- coding:utf-8 -*-
import telnetlib

Host = '172.18.59.105' # Telnet服务器IP
port=23
user=b'zte\r\n'
password=b'zte\r\n'
tn=telnetlib.Telnet()

# telnet 分别传入几个参数值,主机IP,端口号,用户名,密码,后面这个变量id是举例。
def login(host,port,user,password,id):
    try:
        tn.open(host,port)
        tn.set_debuglevel(0)
        tn.read_until(b'Username:',5)
        tn.write(user)
        tn.read_until(b'Password:')
        tn.write(password)
        tn.read_until(b'ZXAN#')
        tn.write(b'config t\r\n')
        tn.read_until(b'ZXAN(config)#')

#  如果在telent 写入值有变量的时候可能会报下面的错误TypeError: can't concat str to bytes,解决方案就是 encode('ascii')
        tn.write(b'interface gpon_onu-1/2/7:'+str(id).encode('ascii')+b'\r\n')
        tn.read_until(b'ZXAN(config-if-gpon_onu-1/2/7:'+str(id).encode('ascii')+b')#')
        tn.close()
    except IOError:
        print('can\'t telnet %s' %host)
login(Host,port,user,password,35)

你可能感兴趣的:(自动化测试脚本,python)