pywinauto自动化操作记事本


Posted in Python onAugust 26, 2019

一、什么是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 threading多线程编程实例
Sep 18 Python
python实现2048小游戏
Mar 30 Python
Python对文件操作知识汇总
May 15 Python
关于numpy中np.nonzero()函数用法的详解
Feb 07 Python
Python简单获取网卡名称及其IP地址的方法【基于psutil模块】
May 24 Python
Python线性拟合实现函数与用法示例
Dec 13 Python
python基于K-means聚类算法的图像分割
Oct 30 Python
Python3监控windows,linux系统的CPU、硬盘、内存使用率和各个端口的开启情况详细代码实例
Mar 18 Python
Python使用matplotlib绘制圆形代码实例
May 27 Python
如何理解python对象
Jun 21 Python
浅谈Python 命令行参数argparse写入图片路径操作
Jul 12 Python
python爬虫泛滥的解决方法详解
Nov 25 Python
Python 实现的 Google 批量翻译功能
Aug 26 #Python
python自动化工具之pywinauto实例详解
Aug 26 #Python
Python3简单爬虫抓取网页图片代码实例
Aug 26 #Python
python 数据提取及拆分的实现代码
Aug 26 #Python
Python3 使用pillow库生成随机验证码
Aug 26 #Python
python excel转换csv代码实例
Aug 26 #Python
对YOLOv3模型调用时候的python接口详解
Aug 26 #Python
You might like
ThinkPHP空模块和空操作详解
2014/06/30 PHP
PHP中魔术变量__METHOD__与__FUNCTION__的区别
2014/09/29 PHP
PHP扩展开发入门教程
2015/02/26 PHP
php的4种常用运行方式详解
2016/12/22 PHP
Laravel框架在本地虚拟机快速安装的方法详解
2018/06/11 PHP
ThinkPHP框架整合微信支付之JSAPI模式图文详解
2019/04/09 PHP
PHP使用PhpSpreadsheet操作Excel实例详解
2020/03/26 PHP
两个select之间option的互相添加操作(jquery实现)
2009/11/12 Javascript
js实现运动logo图片效果及运动元素对象sportBox使用方法
2012/12/25 Javascript
js使用递归解析xml
2014/12/12 Javascript
JS制作手机端自适应缩放显示
2015/06/11 Javascript
jquery中cookie用法实例详解(获取,存储,删除等)
2016/01/04 Javascript
javascript实现表单验证
2016/01/29 Javascript
简述Matlab中size()函数的用法
2016/03/20 Javascript
jQuery使用正则表达式限制文本框只能输入数字
2016/06/18 Javascript
Bootstrap中glyphicons-halflings-regular.woff字体报404错notfound的解决方法
2017/01/19 Javascript
php register_shutdown_function函数详解
2017/07/23 Javascript
Vue工程模板文件 webpack打包配置方法
2017/12/26 Javascript
vue-cli常用设置总结
2018/02/24 Javascript
AngularJS使用Filter自定义过滤器控制ng-repeat去除重复功能示例
2018/04/21 Javascript
Vue 父子组件数据传递的四种方式( inheritAttrs + $attrs + $listeners)
2018/05/04 Javascript
React优化子组件render的使用
2019/05/12 Javascript
Python中使用ElementTree解析XML示例
2015/06/02 Python
Python中list列表的一些进阶使用方法介绍
2015/08/15 Python
Python字典实现简单的三级菜单(实例讲解)
2017/07/31 Python
django2.0扩展用户字段示例
2019/02/13 Python
Python 分发包中添加额外文件的方法
2019/08/16 Python
python连接、操作mongodb数据库的方法实例详解
2019/09/11 Python
python绘制玫瑰的实现代码
2020/03/02 Python
不到20行实现Python代码即可制作精美证件照
2020/04/24 Python
伦敦一家西班牙童装精品店:La Coqueta
2018/02/02 全球购物
村级换届选举方案
2014/05/10 职场文书
大二学生学年自我鉴定
2014/09/12 职场文书
餐饮服务员岗位职责
2015/02/09 职场文书
妈妈再爱我一次观后感
2015/06/08 职场文书
会计专业自荐信范文
2019/05/22 职场文书