在当今的自动化时代,Python因其简洁、可读、高效等特点,逐渐成为编程界的主流语言。 在 Python 自动化领域,PywinAuto 库提供了一种控制 Windows 应用程序自动化的简单方法。 本文将揭开 PywinAuto 的神秘面纱,让您轻松掌握 Python 自动化。
PyWinAuto 是一个基于 Python 的 Windows 应用程序自动化库。 它支持模拟鼠标和键盘操作,以实现对Windows应用程序的自动控制。 使用 PyWinAuto,您可以轻松登录 Windows、自动打开和关闭应用程序、自动填写表单等。
1 安装。
可以使用 pip 命令在命令行上安装 pywinauto 库:
2 基本用法。
1)应用程序对象。
在控制软件的初始步骤中,我们需要启动一个Windows软件,每个软件(进程)都是一个应用程序对象。 实例化 Application 对象时,可以传入后端参数,包括 win32(默认)和 uia 选项。 如果您不知道要测试的软件属于哪个框架,则可以使用 inspect (UIA) 和 spy++ (win32)。 选择显示更多信息的工具。
application 对象。
示例:微信自动登录。
2) WindowSpecification 对象。
我们可以通过使用 Application 对象的 window() 方法来获取窗口,每个窗口都是一个 windowspecification 对象。 我们可以通过传递诸如 title、classname 或 best match 之类的参数来获取这些 windowspecification 对象,这些参数可以在 inspect 中找到exe的。 需要注意的是,你在 inspect 上看到的名称实际上是 window() 标头参数的对应名称。
windowSpecification 对象。
示例:微信最大化窗口显示。
3) 元素控制。
通常,窗口包含各种元素,例如按钮、编辑栏、树视图、复选框、对话框、工具栏、状态栏、列表框、窗格、菜单、菜单项、静态内容、工具提示、列表控件、单选框、组合框、选项卡控件、组框、弹出菜单、标题等。
访问这些控件时,将返回从 ElementInfo 继承的对象(UIAelementInfo 或 HWNDEdElementInfo)。
elementInfo 以获取一些重要的属性或方法。
示例:获取微信左侧导航栏按钮的信息。
除了可以获取元素主要信息的元素信息外,这些元素被包装成一个包装器。
Basewrapper 具有一些重要的属性或方法。
例如,点击微信左侧的“设置和其他”按钮。
4)鼠标操作。
使用 pywinauto 进行鼠标点击时,必须指定点击的位置,桌面可以作为坐标系的起点,其中左上角是原点,右上角是 x 轴的正方向,向下方向是 y 轴的正方向。 使用pywinauto的鼠标模块可以进行鼠标操作。
鼠标操作一些重要的属性或方法。
参数说明:button默认值为left,即鼠标左键,可选值为left、right、middle、move、wheel。
coords 的默认值为元组 (0, 0),元组中的两个整数分别是 x 轴和 y 轴的值。
wheel dist 表示滚动的距离,大于 0 表示向上滚动,小于 0 表示向下滑动。
例如,要获取微信对话列表,请向下滚动到 500
5)键盘操作。
在键盘操作中,我们主要按下键盘上的按键,相关的 API 在键盘模块中提供了几种方法。 其中最重要的是 send keys() 函数,其第一个参数是要按下的键,以及其他参数,例如空格、制表符、换行符、关闭 numlock、set for、vk packet,可用于自定义某些功能。
通常用于键盘操作的键值。
例如,如果您在微信上搜索用户,请输入文本并全选删除。
作为 Python 自动化控制库的一员,pywinauto 易于使用且功能强大。 通过本文的介绍,相信大家对pywinauto有一定的了解和认识。 未来,希望大家能够充分发挥pywinauto的优势,提高工作效率,在以后的习和工作中实现更高水平的自动化控制。
自动化