Python語言兼容多平臺,是網絡編程中的有用工具。其中,連接模擬器是一種常見的應用場景,可以模擬設備使用行為并進行自動化。
#連接模擬器示例代碼 import telnetlib HOST = "localhost" PORT = 23 timeout = 10 tn = None def connect(): global tn tn = telnetlib.Telnet(HOST, PORT, timeout) def close(): tn.close() def send_cmd(cmd): tn.write(cmd.encode() + b"\r\n") return tn.read_until(b"# ", timeout).decode() connect() print(send_cmd("show version")) close()
在上面的代碼中,使用了Python的telnetlib庫來連接模擬器,示例代碼中的模擬器為Telnet。首先使用Telnet類的初始化方法連接到模擬器,代碼中使用了默認的端口23。接著,定義了close()函數用于關閉連接,以釋放資源。
send_cmd()函數是通用的發送命令以及返回結果的方法。其內部使用tn.get_socket()獲取連接對象,并利用Python的encode()方法將發送的命令轉換成字節流。telnetlib.Telnet對象的write()方法用于發送字節流數據,然后通過read_until()方法讀取返回結果并使用decode()將其轉成字符串。
使用connect()方法建立連接后即可使用send_cmd()方法來執行任何命令。在本例中,使用了模擬器的show version命令并輸出結果。
上一篇python 連行符
下一篇mysql單個數據庫權限