企业🤖AI Agent构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
# pywinauto.timings 所有pywinauto的全局时序设置 该模块有一个对象应该用于所有时序调整: * timings.Timings 有几个预定义的设置: * `timings.Timings.fast()` * `timings.Timings.defaults()` * `timings.Timings.slow()` 以下是可以调整的各个时序设置: * window_find_timeout (default 5) * window_find_retry (default .09) * app_start_timeout (default 10) * app_start_retry (default .90) * app_connect_timeout (default 5.) * app_connect_retry (default .1) * cpu_usage_interval (default .5) * cpu_usage_wait_timeout (default 20) * exists_timeout (default .5) * exists_retry (default .3) * after_click_wait (default .09) * after_clickinput_wait (default .09) * after_menu_wait (default .1) * after_sendkeys_key_wait (default .01) * after_button_click_wait (default 0) * before_closeclick_wait (default .1) * closeclick_retry (default .05) * closeclick_dialog_close_wait (default 2) * after_closeclick_wait (default .2) * after_windowclose_timeout (default 2) * after_windowclose_retry (default .5) * after_setfocus_wait (default .06) * setfocus_timeout (default 2) * setfocus_retry (default .1) * after_setcursorpos_wait (default .01) * sendmessagetimeout_timeout (default .01) * after_tabselect_wait (default .05) * after_listviewselect_wait (default .01) * after_listviewcheck_wait default(.001) * listviewitemcontrol_timeout default(1.5) * after_treeviewselect_wait default(.1) * after_toobarpressbutton_wait default(.01) * after_updownchange_wait default(.1) * after_movewindow_wait default(0) * after_buttoncheck_wait default(0) * after_comboboxselect_wait default(.001) * after_listboxselect_wait default(0) * after_listboxfocuschange_wait default(0) * after_editsetedittext_wait default(0) * after_editselect_wait default(.02) * drag_n_drop_move_mouse_wait default(.1) * before_drag_wait default(.2) * before_drop_wait default(.1) * after_drag_n_drop_wait default(.1) * scroll_step_wait default(.1) >[success] *class* `pywinauto.timings.TimeConfig` 定时值的集中存储和操作 > `Defaults(args, **kwargs)` > `Fast(args, **kwargs)` > `Slow(args, **kwargs)` > `defaults()` 将所有时间设置为默认时间 > `fast()` 设置快速计时值 目前,这会以下列方式改变时间: timeouts = 1 second waits = 0 seconds retries = .001 秒(最低限度!) (如果现有时间更快,那么保持现有时间) > `slow()` 设置慢速计时值 目前,这会以下列方式改变时间: timeouts = default timeouts * 10 waits = default waits * 3 retries = default retries * 3 (如果现有时间较慢,则保持现有时间) >[success] *exception* `pywinauto.timings.TimeoutError` >[success] `pywinauto.timings.always_wait_until(timeout, retry_interval, value=True, op=<built-in function eq>)` 装饰者每次都要调用wait_until(...) 作为装饰函数/方法 >[success]`pywinauto.timings.always_wait_until_passes(timeout, retry_interval, exceptions=<class 'Exception'>)` 装饰者每次都要调用wait_until_passes(...)作为装饰函数/方法 >[success]`pywinauto.timings.timestamp()` 获得精确的时间戳 >[success]`pywinauto.timings.wait_until(timeout, retry_interval, func, value=True, op=<built-in function eq>, *args, **kwargs)` 等到 `op(function(*args, **kwargs), value)`为True或直到超时到期 * **timeout** 函数将尝试该函数多长时间 * **retry_interval** 重试之间等待多长时间 * **func** 将要执行的功能 * **value** 要比较的值(默认为True) * **op** 比较函数(默认为相等) * **args** 调用时传递给func的可选参数 * **kwargs** 调用时要传递给func的可选关键字参数 返回函数的返回值如果操作超时,则函数的返回值位于引发的异常的“function_value”属性中。 e.g. ~~~ try: # 等待最多10.5秒 # 对象item_count()方法返回10 # 以0.5的增量递增 wait_until(10.5, .5, self.item_count, 10) except TimeoutError as e: print("timed out") ~~~ >[success] `pywinauto.timings.wait_until_passes(timeout,retry_interval, func, exceptions=<class 'Exception'>, *args, **kwargs)` 等到`func(*args, **kwargs)`没有引发其中一个例外 * **timeout** 函数将尝试该函数多长时间 * **retry_interval** 重试之间等待多长时间 * **func** 将要执行的功能 * **exceptions** 要测试的异常列表(默认值:异常) * **args** 调用时传递给func的可选参数 * **kwargs** 调用时要传递给func的可选关键字参数 返回函数的返回值如果操作超时,则引发的原始异常位于引发的异常的“original_exception”属性中。 e.g. ~~~python try: # 等待最多10.5秒 # 以每秒0.5的增量找到窗口。 # P.int一条消息,如果从未找到,则重新提出原始异常。 wait_until_passes(10.5, .5, self.Exists, (ElementNotFoundError)) except TimeoutError as e: print("timed out") raise e. ~~~