python telnet模块,Python Telnet

本文介绍了Python的telnetlib模块如何用于实现telnet远程连接,包括使用方法、实例演示和注意事项。通过telnetlib.Telnet类的read_until、write和read_all等方法,可以实现与远程主机的交互,例如登录、执行命令并获取输出。示例代码展示了如何连接到一个HTTP服务器并执行基本的文件列表操作。
摘要由CSDN通过智能技术生成

本篇文章帮大家学习python Telnet,包含了Python Telnet使用方法、操作技巧、实例演示和注意事项,有一定的学习价值,大家可以用来参考。

Telnet是一种网络协议,它允许一台计算机上的用户登录到另一台也属于同一网络的计算机。telnet命令与主机名一起使用,然后输入用户凭据。成功登录后,远程用户可以以类似于系统普通用户的方式访问应用程序和数据。当然,某些权限是由设置和维护系统的系统管理员控制。

在Python中,telnet由telnetlib模块实现,该模块具有Telnet类,该类具有建立连接所需的方法。在下面的示例中,使用getpass模块在登录过程中处理密码提示。另外,假设已建立到UNIX主机的连接。下面说明程序中使用的telnetlib.Telnet类的各种方法。

Telnet.read_until - 读取直到遇到给定的预期字符串或超时秒数为止。

Telnet.write - 将字符串写入套接字,将所有IAC字符加倍。如果连接被阻止,则可能会阻止。如果关闭连接,可能会引发socket.error。

Telnet.read_all()-读取所有数据,直到EOF;阻塞直到连接关闭。

示例

import getpass

import telnetlib

HOST = "http://localhost:8000/"

user = raw_input("Enter your remote account: ")

password = getpass.getpass()

tn = telnetlib.Telnet(HOST)

tn.read_until("login: ")

tn.write(user + "\n")

if password:

tn.read_until("Password: ")

tn.write(password + "\n")

tn.write("ls\n")

tn.write("exit\n")

print tn.read_all()

运行上面示例代码,得到以下结果:

- lrwxrwxrwx 1 0 0 1 Nov 13 2012 ftp -> .

- lrwxrwxrwx 1 0 0 3 Nov 13 2012 mirror -> pub

- drwxr-xr-x 23 0 0 4096 Nov 27 2017 pub

- drwxr-sr-x 88 0 450 4096 May 04 19:30 site

- drwxr-xr-x 9 0 0 4096 Jan 23 2014 vol

请注意,此输出由运行程序时提交详细信息的远程计算机决定。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值