【发布时间】:2014-11-07 17:33:17
【问题描述】:
我有一个 python 代码,它使用 Putty 打开一个 SSH 会话并传递一个命令来使用 pywinauto 重新启动远程机器。 我想在输入密码后从腻子终端读取文本并进行比较 有什么办法可以做到吗? 下面是一段相同的代码
app_Putty = application.Application()
app_Putty.start_("C:\Users\debajyoti.bose\Downloads\putty.exe")
app_Putty.top_window_().TypeKeys(IP)
app_Putty.top_window_().TypeKeys("{TAB}"+"22")
app_Putty.top_window_().RadioButton4.Click()
app_Putty.top_window_().OpenButton.Click()
time.sleep(10)
app_Putty.top_window_().NoButton.Click()
time.sleep(2)
app_Putty.top_window_().TypeKeys(user+"{ENTER}")
time.sleep(3)
app_Putty.top_window_().TypeKeys(password+"{ENTER}")
time.sleep(3)
app_Putty.top_window_().TypeKeys("/bin/reboot"+"{ENTER}")
time.sleep(5)
app_Putty.kill_()
time.sleep(120)
我正在使用 pywinauto v0.4.0 提前致谢。
【问题讨论】:
-
请在杀死应用程序之前提供命令
app_Putty.top_window_().PrintControlIdentifiers()的输出。 -
嗨 Ryabov,感谢您的回复。我已经尝试过了,它没有打印控制台输出。实际上我需要在输入错误密码时读取控制台的响应,如下所示: root@192.168.1.18's password: Access denied root@192.168.1.18's password: All I当我使用该命令时得到的是:` Traceback(最近一次调用最后一次):文件“C:\Users\abc.def\reboot - Copy (6).py”,第 88 行,在
app_Putty().top_window ().PrintControlIdentifiers() TypeError: 'Application' object is not callable` -
请从
app_Putty实例中删除括号。 :) 只需复制我之前评论中的命令并在app_Putty.kill_()之前运行。 -
嗨 Ryabov,我尝试了完全相同的方法,这次在 PrintControlIdentifiers[] 之后只得到了一个空字符串。
标签: python-2.7 pywinauto