pywinauto客户端自动化---自动打开PC端程序
继续介绍pywinauto,上一篇已经可以打开记事本了,这里安静在提供其他方法进行打开记事本和非电脑自带程序
运行指定程序
这里安静分别拿电脑自带程序和电脑非自带程序进行模拟打开。
1、windows自带程序:
这里需要start后面的参数,可以通过上一篇介绍的工具进行获取,也可以通过鼠标右键–属性查看
# coding:utf-8 from pywinauto import application # 打开记事本 app = application.Application().start(\'notepad.exe\')
2、非windows自带程序:
这里我们如果按照上面的方法进行查看的话会报错误,这里我们拿电脑上安装的QQ来测试
发现提示找不到指定的文件
这里安静把QQ的文件地址全部都拷贝上试试看呢?
发现这里是直接打开的,因为程序运行后是从环境变量中查找的,我们可以通过把程序添加到环境变量中直接调用
这个时候再次运行发现就已经可以成功的打开了QQ
# coding:utf-8 from pywinauto import application # 打开QQ app = application.Application().start(\'QQScLauncher.exe\')
启动已打开程序
前面的例子我们会发现都是程序没有运行起来的,那么想要启动已经运行起来的程序应该怎么做?
方法一:
通过进程号的形式进行打开
方法二:
通过窗口句柄的形式打开。问题来了?怎么查看窗口句柄?
这个时候需要通过前面说的viewWizard工具进行查看,通过下图可以看到窗口的句柄为134242
方法三:
通过标题的方式打开
# coding:utf-8 import pywinauto # 通过窗口打开 app = pywinauto.Desktop() win = app[\'QQ\'] print(win)
可以发现通过句柄的形式也可以指定这个软件。然后进行对软件操作