我正在尝试pywinauto的第一件事。
现在我想使用print_control_identifiers()
但是我得到了错误,但是我编写了代码 - 我无法获得有关GUI对象的任何信息。
我已经尝试通过swapy生成代码 - 有很多生成的代码,但没有成功。
到目前为止,这是我的代码:
import getpass, fnmatch
from pywinauto import application
currentUser = getpass.getuser()
if fnmatch.fnmatch(currentUser, "axe"):
pwa_app = application.Application()
w_handle = application.findwindows.find_windows(title=u'Login - 0.9.347', class_name='WindowsForms10.Window.8.app.0.141b42a_r11_ad1')[0]
window = pwa_app.window_(handle=w_handle)
window.SetFocus()
ctrl = window['Log In']
ctrl.Click()
else:
print "You need admin rights for that action"
你能告诉我,我需要在哪里使用print_control_identifiers()
吗?
您是否有其他更新的GUI自动化框架?
答案 0 :(得分:1)
PrintControlIdentifiers()对顶级窗口很有用。如果window
是顶级窗口规范,则只需调用
window.PrintControlIdentifiers()
或
pwa_app.Window_(title=u'Login - 0.9.347', top_level_only=True).PrintControlIdentifiers()
答案 1 :(得分:0)
一些例子:
Swapy很适合识别属性。此外,pywinauto给出的示例非常有用。 资料来源:https://pywinauto.googlecode.com/hg/pywinauto/docs/getting_started.html
from pywinauto import application
app = application.Application.Start("Notepad.exe")
app.Notepad.print_control_identifiers()
app.Notepad.MenuSelect("Edit->Replace")
app.Replace.print_control_identifiers()
来自pywinauto导入应用程序
from pywinauto import application
app = application.Application()
app.Start("Notepad.exe")
Wnd_Main = app.window_(title_re=".*Notepad")
Wnd_Main.MenuSelect("File->Save")
Wnd_Save = app.window_(title_re="Save As")
Wnd_Save.Edit1.SetEditText("Hello World.txt")