pexpect发送光标移动

时间:2012-10-19 20:28:31

标签: python pexpect

如何使用pexpect发送上,下,左,右键等光标移动。下面的示例是自动化elinks,它使用向上/向下键选择页面上的不同链接。

from pexpect import spawn
child = spawn('elinks http://python.org')
#what goes here to send down key
child.interact()

2 个答案:

答案 0 :(得分:5)

以下脚本包含所有四个光标移动的代码,以及如何在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)

答案 1 :(得分:3)

如何使用转义序列向上(^ [[A]或向下(^ [[B]像这样。

child.send("\033[A")  # up
child.send("\033[B")  # down