• 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)

    可以发现通过句柄的形式也可以指定这个软件。然后进行对软件操作

  • 相关阅读:
    foreach的使用(c#)
    ssl详解
    c#的html格式化输出(看php10012视频时想到的)
    PHP句法规则详解(转载)
    C#中Bitmap类实现对图像操作的一些方法(Asp.net(C#)放大缩小图片尺寸)
    c# 窗体最小化到托盘
    C# 中的委托和事件
    C# StringBuilder和String浅析
    c#值类型和引用类型
    后台关闭页面
  • 原文地址:https://www.cnblogs.com/qican/p/13208927.html
Copyright © 2020-2023  润新知