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实现在pickling的时候压缩的方法
Sep 25 Python
python最长回文串算法
Jun 04 Python
详解用python自制微信机器人,定时发送天气预报
Mar 25 Python
Python中的Socket 与 ScoketServer 通信及遇到问题解决方法
Apr 01 Python
Python跳出多重循环的方法示例
Jul 03 Python
python 协程中的迭代器,生成器原理及应用实例详解
Oct 28 Python
Python 中的 import 机制之实现远程导入模块
Oct 29 Python
python对验证码降噪的实现示例代码
Nov 12 Python
opencv3/C++实现视频读取、视频写入
Dec 11 Python
使用Python打造一款间谍程序的流程分析
Feb 21 Python
Django接收照片储存文件的实例代码
Mar 07 Python
如何配置关联Python 解释器 Anaconda的教程(图解)
Apr 30 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
国产动画《伍六七》原声大碟大卖,啊哈娱乐引领音乐赋能IP的新尝试
2020/03/08 国漫
PHP实现的简单缓存类
2015/07/29 PHP
php封装的验证码工具类完整实例
2016/10/19 PHP
Zend Framework数据库操作方法实例总结
2016/12/11 PHP
在Laravel 的 Blade 模版中实现定义变量
2019/10/14 PHP
jquery+ajax每秒向后台发送请求数据然后返回页面的代码
2011/01/17 Javascript
js实现运动logo图片效果及运动元素对象sportBox使用方法
2012/12/25 Javascript
JQuery表格内容过滤的实现方法
2013/07/05 Javascript
轻松创建nodejs服务器(8):非阻塞是如何实现的
2014/12/18 NodeJs
被遗忘的javascript的slice() 方法
2015/04/20 Javascript
JS面向对象(3)之Object类,静态属性,闭包,私有属性, call和apply的使用,继承的三种实现方法
2016/02/25 Javascript
JavaScript中的this引用(推荐)
2016/08/05 Javascript
Django1.7+JQuery+Ajax验证用户注册集成小例子
2017/04/08 jQuery
nodejs6下使用koa2框架实例
2017/05/18 NodeJs
Vue中的slot使用插槽分发内容的方法
2018/03/01 Javascript
使用layui 的layedit定义自己的toolbar方法
2019/09/18 Javascript
javascript随机变色实例代码
2019/10/15 Javascript
[06:11]2014DOTA2国际邀请赛 专访团结一心的VG战队
2014/07/21 DOTA
在Python中使用sort()方法进行排序的简单教程
2015/05/21 Python
Python语言实现获取主机名根据端口杀死进程
2016/03/31 Python
使用Python实现从各个子文件夹中复制指定文件的方法
2018/10/25 Python
Python中函数参数匹配模型详解
2019/06/09 Python
使用Python制作新型冠状病毒实时疫情图
2020/01/28 Python
解决django xadmin主题不显示和只显示bootstrap2的问题
2020/03/30 Python
如何写一个自定义标签
2012/12/28 面试题
测绘工程本科生求职信
2013/10/10 职场文书
西北政法大学自主招生自荐信
2014/01/29 职场文书
手机银行营销方案
2014/03/14 职场文书
房产买卖委托公证书
2014/04/04 职场文书
关爱留守儿童倡议书
2014/04/15 职场文书
团队精神的演讲稿
2014/05/14 职场文书
政治学专业毕业生求职信
2014/08/11 职场文书
青年教师师德演讲稿
2014/08/26 职场文书
大学生联谊活动策划书(光棍节)
2014/10/10 职场文书
合作协议书模板
2014/10/10 职场文书
sql server删除前1000行数据的方法实例
2021/08/30 SQL Server