Diver_IPlist = ['192.168.188.5','192.168.188.6','192.168.188.7','192.168.188.8']
Driver_Username = b'admin'
Driver_Password = b'huawei'
com = b'display current-configuration'
import telnetlib
import time
HostR1 = '192.168.188.6'
for x in Diver_IPlist:
tn = telnetlib.Telnet(x)
tn.set_debuglevel(5)
tn.read_until(b"Username:")
tn.write(Driver_Username + b'\n')
print('用户名输入完成')
tn.read_until(b"Password:")
tn.write(Driver_Password + b'\n')
print('密码输入完成')
time.sleep(2)
tn.write(b'\n')
tn.write(com + b"\n")
print('命令输入完成')
tn.write(b' ')
time.sleep(2)
tn.write(b' ')
tn.write(b'\n')
my_file = open("Routerconfig.txt",'a')
print('----------------------------------- --- -- - 分割线 - - --- ------------------------------------', file=my_file)
print(tn.read_very_eager().decode("unicode-escape"),file=my_file)
print('\n', file=my_file)
my_file.close()
网上看了好多教程 Telnetlib其实很简单 我做的时候总是返回不到结果 最后debug发现 我路由器没设置level 导致dis current-configuration命令无法使用 然后写文件和for in循环就更简单了 代码写的很垃圾 开发勿喷 我们网工这辈子也就这样了!