pywinauto自动化操作记事本

yipeiwu_com5年前Python基础

一、什么是pywinauto

Pywinauto是基于Python开发的,用于操作Windows标准图形界面的自动化测试的脚本模块。

二、pywinauto可以用来做什么

1.可以应用在程序中,来解决工作中的重复性,手动操作图形界面程序的问题。

2.窗口的指定,鼠标或键盘操作,获得控制属性,操作控件等等。

三、实例

下面我们以一个具体的实例,来探究pywinauto的使用,我们应用pywinauto来模拟人为的操作,打开一个记事本,写入文本,更改文件名,保存退出的一系列操作。

首先我们需要使用Python的包管理工具pip来安装pywinauto这个模块,在编辑器的终端中输入以下语句来安装:

pip install pywinauto

再来验证这个模块有没有装好,输入以下语句:

from pywinauto import Application

如果没有报错的话,说明已经安装好,就可以开始进行后续操作了。

整体代码如下所示:

from pywinauto import Application  # 导包


def pywinauto_task():  # 定义一个自动化任务的函数
  for i in range(1, 6):  # 让这个任务执行指定次数,这里是5次
    app = Application().start('notepad.exe')  # 实例化一个对象,并启动指定的应用程序,start参数也可写入路径
    app['无标题-记事本'].MenuSelect('帮助->关于记事本')  # 在指定标题的窗口中,选择菜单
    app['关于“记事本”']['确定'].click()  # 在弹出的窗口中,定位确定按钮,并点击
    app['无标题-记事本'].MenuSelect('文件->另存为...')  # 打开记事本的另存为窗口
    file_name = '第' + str(i) + '个.txt'  # 定义好文件的名字
    app['另存为']['edit'].TypeKeys(file_name)  # 将文件名键入
    app['另存为']['保存'].click()  # 更改文件名之后保存
    app[file_name].edit.TypeKeys('hello\n', with_newlines=True)  # 在记事本窗口中写入内容,并换行
    app[file_name].edit.TypeKeys('这是第' + str(i) + '个文件')  # 写入第二行内容
    app.Notepad.MenuSelect('文件->退出')  # 选择菜单退出
    app['记事本']['保存'].click()  # 保存写好的记事本


if __name__ == '__main__':  # 执行此函数
  pywinauto_work()

四、总结

怎么样,挺简单的吧,其实看着简单,真正自己实践起来,还是费了一番周折的,任何一部分知识的获取与掌握,都需要有一个过程,继续加油吧!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

在Python中操作时间之strptime()方法的使用

 strptime()方法分析表示根据格式的时间字符串。返回值是一个struct_time所返回gmtime()或localtime()。 格式参数使用相同的指令使用strft...

使用Python脚本和ADB命令实现卸载App

使用Python脚本和ADB命令实现卸载App

前言 本文实现一个 Python 脚本,用来批量卸载模拟器或者实体机上面的 App 以及清除 LogCat 缓存。 开发 Android 的朋友,模拟器或者手机里面常常有大量调试的 De...

Python实现查看系统启动项功能示例

本文实例讲述了Python实现查看系统启动项功能。分享给大家供大家参考,具体如下: 一、代码 # -*- coding:utf-8 -*- #! python3 from win32...

Python获取指定文件夹下的文件名的方法

本文采用os.walk()和os.listdir()两种方法,获取指定文件夹下的文件名。 一、os.walk() 模块os中的walk()函数可以遍历文件夹下所有的文件。 os.wa...

Python图像处理之gif动态图的解析与合成操作详解

Python图像处理之gif动态图的解析与合成操作详解

本文实例讲述了Python图像处理之gif动态图的解析与合成操作。分享给大家供大家参考,具体如下: gif动态图是在现在已经司空见惯,朋友圈里也经常是一言不合就斗图。这里,就介绍下如何使...