#!/usr/bin/env python # coding: utf-8 # In[1]: #/usr/bin/env python3 from telnetlib import Telnet import re,time,datetime,os from threading import Thread import xlrd # In[2]: # 华为设备执行命令函数 def execute_hw(address): account="csiaadmin" password="qweR%9527" tn = Telnet(address) tn.read_until(b"Username:", timeout=None) tn.write(account.encode()+b'\n') tn.read_until(b"Password:", timeout=None) tn.write(password.encode()+b'\n') tn.write(b"sys"+b'\n') tn.write(b"dhcp enable " + b'\n') tn.write(b"dhcp snooping enable " + b'\n') tn.write(b"port-group 1" + b'\n') tn.write(b"group-member GigabitEthernet0/0/1 to GigabitEthernet0/0/48" + b'\n') tn.write(b"dhcp snooping enable " + b'\n') time.sleep(2) tn.write(b"quit" + b'\n') tn.write(b"quit" + b'\n') tn.write(b"save" + b'\n') tn.write(b"y" + b'\n') time.sleep(2) tn.write(b"quit" + b'\n') tn.close() print(address) if __name__ == '__main__': ff = open('jiaohuanji.txt', 'r') for line in ff.readlines(): ipp = line.strip() execute_hw(ipp) ff.close()
写了一个特别简单的python代码,通过来Telnetlib模块来批量配置华为交换机,但是每次配置完最后一个交换机,就会弹出以下错误
Traceback (most recent call last):
File "C:/Users/Administrator/Desktop/xl/caiji/beifen/peizhi.py", line 56, in <module>
execute_hw(ipp)
File "C:/Users/Administrator/Desktop/xl/caiji/beifen/peizhi.py", line 30, in execute_hw
tn = Telnet(address)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python38\lib\telnetlib.py", line 218, in __init__
self.open(host, port, timeout)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python38\lib\telnetlib.py", line 235, in open
self.sock = socket.create_connection((host, port), timeout)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python38\lib\socket.py", line 808, in create_connection
raise err
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python38\lib\socket.py", line 796, in create_connection
sock.connect(sa)
ConnectionRefusedError: [WinError 10061] 由于目标计算机积极拒绝,无法连接。