如何使用 pexpect 发送光标移动,如上、下、左、右键。下面的示例是自动化 elinks,它使用 up/down 键来选择页面上的不同链接。
from pexpect import spawn
child = spawn('elinks http://python.org')
#what goes here to send down key
child.interact()
下面的脚本包含所有四个光标移动的代码,以及一个如何在 pexpect 中使用它的示例。要发现任何输入文本的确切字符串序列,您可以使用下面的 get_keys.py 脚本。
KEY_UP = '\x1b[A'
KEY_DOWN = '\x1b[B'
KEY_RIGHT = '\x1b[C'
KEY_LEFT = '\x1b[D'
child.sendline(KEY_DOWN * 5) #send five key downs
get_keys.py
import curses
screen = curses.initscr()
screen.addstr("Press any set of keys then press enter\n")
keys = ''
while True:
event = screen.getkey()
if event == "\n":
break
keys += event
curses.endwin()
print repr(keys)
像这样对 up(^[[A) 或 down(^[[B) 使用转义序列怎么样。
child.send("\033[A") # up
child.send("\033[B") # down
试试这个发送 '\033\117\102' 作为向下键