【发布时间】:2013-04-12 16:17:19
【问题描述】:
我在 python 中使用 telnetlib... 我使用 '\r' 作为输入键,'\t' 用于 TAB。 与这种情况相同,我想要 SHIFT、PAGE UP、PAGE DOWN、F1、F2...F12 的字符序列。 请帮助我解决这个问题,因为我必须在我的代码中使用所有这些键盘键。
import telnetlib
HOST = "localhost"
user = raw_input("Enter your remote account: ")
password = getpass.getpass()
tn = telnetlib.Telnet(HOST)
tn.write("ls\n")
tn.write("exit\n")
tn.write("\r") #this is for enter
tn.write("\t") # this is for tab
#what should be here to other keys..pls
print tn.read_all()
【问题讨论】:
-
'\r' 表示 ASCII 中的回车符(
len("\r")为 1)。这些其他键没有字符,因此您需要计算出服务器期望的字节序列。 Shift 是一个修饰键,即 Shift-a 生成一个“A”字节,但 shift 本身不做任何事情。 -
我得到了键 f4 = '\x1b4', f3 = \x1b3, f5 = \x1b5, f6 = \x1b6 的值,但我无法得到这些值背后的逻辑。@Thomas K:服务器期望一个“shift + F1”键,如何知道使用这个“shift + F1”事件生成了什么字节序列?
标签: python