python + pywinauto :windowsPC端自动化
一、python中GUI自动化工具介绍PyAutoGui
一个流行的跨平台库
具有基于图像的搜索功能,没有基于文本的控件操作
Lackey
基于图像模式匹配
AXUI
MS UI Automation API控件的一个包装器
winGuiAuto
一个使用win32 API的控件模块
Pywinauto
同时支持控件操作和图像操作,支持win32 API 和MS UI Automation API
二、Pywinauto情况安装
安装python
https://python.p2hp.com/downloads/
https://www.python.org/downloads/
1、 安装好python
2、确认pip能正常使用
C:\Users\liuni>python --version
Python 3.10.6
C:\Users\liuni>pip --version
pip 23.2.1 from D:\Program Files\python\lib\site-packages\pip (python 3.10)
https://img-blog.csdnimg.cn/direct/ad00b6b5e8854653913a9a45696aa8bf.png
安装Pywinauto
方式一:pip在线安装
pip install pywinauto# 安装
pip uninstall pywinauto# 卸载
https://img-blog.csdnimg.cn/direct/4924bc9e2fd44fbdb222b818915838e3.png
方式二:离线安装
1、 下载压缩包
https://pypi.org/project/pywinauto/#fileshttps://img-blog.csdnimg.cn/direct/078406446d884bf09602fed637f46956.png
2、 解压压缩包
为方便管理,将解压后的文件夹放到python的安装目录下
https://img-blog.csdnimg.cn/direct/137c719844d74d3783b0bd769860433d.png
3、cmd进入压缩之后的文件夹中
setup.pywen文件所在目录
4、运行 python setup.py install 进行安装
三、自动化的切入点
确定应用步伐的可访问技能
支持控件的访问技能(Pywinauto的后端):
[*]Win32 API (backend = “win32”) 默认的backend
MFC、VB6、VCL、简单的WinForms控件和大多数旧的应用步伐
[*]MS UI Automation API (backend = “uia”)
WinForms、WPF、Store apps、Qt5、浏览器
启动应用步伐
切入点自动化控制进程的范围。如一个步伐有多个实例,自动化控制一个实例,而保证其他实例(进程)不受影响。
在Pywinauto中主要有两种对象可以建立这种入口点:
[*]Application
Application的作用范围是一个进程,如一般的桌面应用步伐都为此类
[*]Desktop
Desktop的作用范围可以跨进程。主要用于一个步伐可以包罗多个实例(进程)的步伐
可以通过任务管理器直接查看应用步伐是否多进程:
https://img-blog.csdnimg.cn/direct/5f0082a72e0f4efcbea73e00ba09b861.png
四、步伐检测相干辅助工具
GUI对象查抄/Spy工具
Windows系统 “进程、线程、窗口、窗口消息“ 分析工具:Accessibility Insights、spy、Inspect:
https://blog.csdn.net/freeking101/article/details/88249944
Inspect.exe
可以参考https://blog.csdn.net/weixin_49098230/article/details/137106399下载安装
适合使用uia的backend
Inspect.exe是Microsoft创建的一个工具。包罗在windows SDK中,因此可以在x64 Windows上的C:\ Program Files(x86)\Windows Kits\10\bin\x64中找到
也可以单独下载安装:https://developer.microsoft.com/zh-cn/windows/downloads/windows-sdk/
https://img-blog.csdnimg.cn/direct/b35b18146b9b48d0b59354144d6aa84f.png
运行Inspect.exe即可使用:
https://img-blog.csdnimg.cn/direct/316541d061104f5794824b6c9b8a92ac.png
FlaUInspect
可以参考https://blog.csdn.net/weixin_49098230/article/details/137106399下载安装
UI Automation属性值获取工具。
它有三种查抄元素的方法:打开Flauinspect>转到“Mode”:
1.悬停模式(按Ctrl并将鼠标指针移到目标元素上)
2.焦点追踪()
3.显示XPATH(与上面列出的任何模式结合使用),它将仅显示绝对XPath。
https://img-blog.csdnimg.cn/direct/3dc26e8ab0c94eed82260df947ed5f30.png
spy++.exe
使用win32 API。如果spy++能够显示步伐的所有控件,那么该应用步伐适合使用win32的backend
ViewWizard
ViewWizard(窗口信息查看精灵),使用起来非常简洁,可查看窗口和控件句柄、类名、标题、风格等信息
五、Python + Pywinauto自动化实现
https://blog.csdn.net/weixin_43875895/article/details/124999040
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]