python实现远程telnet登录

1、安装库
windows开启telnet服务就行

2、函数介绍
1.引入telnetlib模块和时间模块
import telnetlib
import tim

2.调用telnetlib的telnet()函数,将它赋值给tn,尝试以telnet方式登录交换机。

host='10.0.1.x'
 tn=telnetlib.Telnet(host) 
  1. tn.read_until(‘Password:’) 的函数来告诉程序:如果在终端信息库读到’‘Password:’‘字样,则使用tn.write(password+’\n’)函数来输入telnet密码并回车
tn.read_until(b'Password:')
tn.write(password.encode('ascii')+b'\n')
print('成功登录到交换机:'+host)

4.用Telnetlib的write()函数在SW1上输入各种配置命令了,这里给交换机配置MSTP。

	tn.write(b'sys\n')
    tn.write(b'stp mode rstp\n')
    #保存配置
    tn.write(b'return\n')
    tn.write(b'save\n')
    tn.write(b'y\n')
    tn.write(b'dis stp | include CIST Global Info\n')
    time.sleep(1)

5…打印终端回显消息

  output=tn.read_very_eager().decode('ascii')
      print(output)

6.关闭

tn.close()#关闭连接

3、代码编写

import telnetlib
import time

  
  # 配置选项
Host = '192.168.73.176' # Telnet服务器IP
username = 'z'   # 登录用户名
password = 'z'  # 登录密码

  
# 连接Telnet服务器
tn = telnetlib.Telnet(Host)
  
# 输入登录用户名
tn.read_until(b'login:')
tn.write(username.encode('ascii') + b"\n")
# 输入登录密码
tn.read_until(b'Password:')
tn.write(password.encode('ascii') + b"\n")
print('成功登录到设备:'+Host)

# 登录完毕后,执行ls命令
tn.read_until(b':~$ ')
print("执行pwd")
tn.write(b'pwd\n')
time.sleep(1)
output=tn.read_very_eager().decode('ascii')
print(output)
  
# ls命令执行完毕后,终止Telnet连接(或输入exit退出)
tn.read_until(b':~$ ')
tn.close() # tn.write('exit\n')

执行结果
在这里插入图片描述

  • 2
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实现Python的Windows远程登录,可以使用telnetlib库。以下是一个示例代码: ```python import telnetlib # 配置选项 Host = '192.168.1.2' # Telnet服务器IP username = 'admin' # 登录用户名 password = '123456' # 登录密码 finish = ':~$ ' # 命令提示符(标识着上一条命令已执行完毕) # 连接Telnet服务器 tn = telnetlib.Telnet(Host) # 输入登录用户名 tn.read_until(b'login: ') tn.write(username.encode('ascii') + b'\n') # 输入登录密码 tn.read_until(b'Password: ') tn.write(password.encode('ascii') + b'\n') # 登录完毕后,执行命令 tn.read_until(finish.encode('ascii')) tn.write(b'ls\n') # 命令执行完毕后,终止Telnet连接 tn.read_until(finish.encode('ascii')) tn.close() ``` 这段代码使用telnetlib库连接到指定的Telnet服务器,然后输入登录用户名和密码。登录成功后,执行了一个ls命令,并读取了命令执行结果。最后,关闭了Telnet连接。请注意,根据实际情况,你需要修改Host、username和password等参数来适应你的环境。 #### 引用[.reference_title] - *1* *3* [python实现远程telnet登录](https://blog.csdn.net/u010835747/article/details/126563222)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [使用Python实现Telnet远程登录](https://blog.csdn.net/weixin_42036402/article/details/117120765)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值