Pywinauto的几个小坑

最近在使用pywinauto写自动化时遇到几个问题,总结一下备忘:

1. TextBox的输入

    TextBox的输入一般使用pywinauto的 set_edit_text,但会出现一个问题:写完后不生效,不像人工输入后一样生效。

     解决方法:1)可以在输完后点击一下别的元素,强制生效

                       2)用下面的方式

element_obj.set_edit_text("")
element_obj.type_keys(str(xxxxx))

  

    2. 判断元素是否可见时,提出元素找不到,如下:

pywinauto.findwindows.ElementNotFoundError: {'top_level_only': False, 'title_re': 'High',
 'parent': <pywinauto.uia_element_info.UIAElementInfo object at 0x00A819D0>, 'backend': 'uia'}

查看官网文档时,查找元素有一个小参数可以解决该问题:

visible_only=False

 例:

object.child_window(auto_id="xxx", control_type="Text",visible_only=False).is_visbile()

 

持续更新中......

 

posted @ 2024-05-10 11:07  Believer007  阅读(302)  评论(0编辑  收藏  举报