当前位置:   article > 正文

UIAutomation学习笔记

UIAutomation学习笔记

主要的3个Python第三方库

1. uiautomation


# 主要用途: 这个库主要用于Windows平台上的UI自动化。它可以帮助你自动操作和处理用户界面元素,例如点击按钮,读取文本,操作窗口等。
# import uiautomation as ui  # 导入控件控制库

2. pyperclip


# 主要用途: 这个库用于处理剪贴板功能,允许你的脚本复制和粘贴文本到系统的剪贴板。
# import pyperclip  # 导入剪切板相关库

3. pyautogui


# 主要用途: 这个库允许你控制鼠标和键盘来自动化屏幕上的操作。
# 功能丰富,除了基本输入之外,还可以处理屏幕图像识别,用于在屏幕上查找按钮、图像等。
# import pyautogui  # 导入自动操作库

4. pygetwindow


# 主要用途: 这个库专注于控制和管理Windows操作系统上的窗口。
# import pygetwindow as gw

uiautomation用法:


-h      展示命令帮助
-t      延迟时间, 默认是三秒, 延迟时间三秒之后开始枚举, 延时时间必须是整数
         您可以延迟几秒钟并使窗口处于活动状态,以便自动化可以枚举活动窗口
-d     枚举树的深度,必须是整数,如果为空,则枚举整棵树
-r      从根枚举:根是桌面窗口,如果为空,则从前台(当前)窗口枚举
-f      enumerate from focused control, if it is null, enumerate from foreground window
         从焦点控件枚举,如果为空,则从前台窗口枚举。
-c      enumerate the control under cursor, if depth is < 0, enumerate from its ancestor up to depth
         枚举光标下的控件,如果深度小于0,则从光标下的控件的祖先枚举到指定深度。
-a      show ancestors of the control under cursor
         显示控件下的祖先(父物件)。
-n      show control full name, if it is null, show first 30 characters of control's name in console,
         always show full name in log file @AutomationLog.txt
         显示控件的完整名称,如果为空,则在控制台中显示控件名称的前30个字符,在日志文件@AutomationLog.txt中始终显示完整名称。
-p      show process id of controls
         显示控件的进程ID。

if UnicodeError or LookupError occurred when printing,
try to change the active code page of console window by using chcp or see the log file @AutomationLog.txt

如果在打印时出现UnicodeError或LookupError,尝试通过使用chcp更改控制台窗口的活动代码页,或查看日志文件@AutomationLog.txt。

chcp, get current active code page
chcp 936, set active code page to gbk
chcp 65001, set active code page to utf-8

 

  1. chcp:这是一个用于配置控制台字符编码页的命令。它可以用于查看当前活动的字符编码页或更改它。

  2. chcp 936:这个命令将控制台的字符编码页设置为936,它对应于中文GBK编码。这意味着在控制台窗口中显示的文本将以GBK编码方式解释和显示,适用于中文字符。

  3. chcp 65001:这个命令将控制台的字符编码页设置为65001,它对应于UTF-8编码。UTF-8是一种通用的字符编码方式,支持多种语言和字符集,适用于显示各种语言的文本。

示例:


automation.py -t3
延迟时间三秒之后开始枚举, 3秒内并使窗口处于活动状态,以便自动化可以枚举活动窗口

automation.py -t3 -r -d1 -m -n
延迟时间三秒之后开始枚举, 3秒内并使窗口处于活动状态,以便自动化可以枚举活动窗口+
从根枚举:根是桌面窗口,如果为空,则从前台(当前)窗口枚举+
从焦点控件枚举,如果为空,则从前台窗口枚举。+
枚举树的深度为1+
显示控件的完整名称,如果为空,则在控制台中显示控件名称的前30个字符,在日志文件@AutomationLog.txt中始终显示完整名称。

automation.py -c -t3
枚举光标下的控件,如果深度小于0,则从光标下的控件的祖先枚举到指定深度
延迟时间三秒之后开始枚举, 3秒内并使窗口处于活动状态,以便自动化可以枚举活动窗口

automation.py -t 0

打印当前激活窗口的所有控件

automation.py -r -d 1 -t 0

打印桌面(树的根控件 )和它的第一层子窗口(TopLevel顶层窗口)

来自:https://github.com/yinkaisheng/Python-UIAutomation-for-Windows/blob/master/readme_cn.md

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/570568
推荐阅读
相关标签
  

闽ICP备14008679号