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中的进程分支fork和exec详解
Apr 11 Python
Python输出9*9乘法表的方法
May 25 Python
在Django的上下文中设置变量的方法
Jul 20 Python
Python的Flask框架中的Jinja2模板引擎学习教程
Jun 30 Python
python实现决策树ID3算法的示例代码
May 30 Python
30秒学会30个超实用Python代码片段【收藏版】
Oct 15 Python
图解python全局变量与局部变量相关知识
Nov 02 Python
jupyter notebook 实现matplotlib图动态刷新
Apr 22 Python
Python基于codecs模块实现文件读写案例解析
May 11 Python
selenium切换标签页解决get超时问题的完整代码
Aug 30 Python
pandas统计重复值次数的方法实现
Feb 20 Python
python前后端自定义分页器
Apr 13 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
饭制《星际争霸》Mod:优化游戏机制 增加新单位
2017/07/02 星际争霸
PHP中的日期处理方法集锦
2007/01/02 PHP
PHP IF ELSE简化/三元一次式的使用
2011/08/22 PHP
PHP函数microtime()用法与说明
2013/12/04 PHP
php中文字符串截取方法实例总结
2014/09/30 PHP
用json方式实现在 js 中建立一个map
2014/05/02 Javascript
jQuery中detach()方法用法实例
2014/12/25 Javascript
webpack+vue.js快速入门教程
2016/10/12 Javascript
js仿手机页面文件下拉刷新效果
2016/10/14 Javascript
Bootstrap CSS布局之图像
2016/12/17 Javascript
EasyUI折叠表格层次显示detailview详解及实例
2016/12/28 Javascript
jQuery实现的简单悬浮层功能完整实例
2017/01/23 Javascript
Node.js发送HTTP客户端请求并显示响应结果的方法示例
2017/04/12 Javascript
详解JS中的attribute属性
2017/04/25 Javascript
使用Node.js实现RESTful API的示例
2017/08/01 Javascript
详解webpack性能优化——DLL
2017/10/20 Javascript
vue实现行列转换的一种方法
2019/08/06 Javascript
IE11下CKEditor在Bootstrap Modal中下拉问题的解决
2019/09/25 Javascript
ES5新增数组的实现方法
2020/05/12 Javascript
javascript使用canvas实现饼状图效果
2020/09/08 Javascript
python if not in 多条件判断代码
2016/09/21 Python
用十张图详解TensorFlow数据读取机制(附代码)
2018/02/06 Python
python实现读Excel写入.txt的方法
2018/04/29 Python
Python操作远程服务器 paramiko模块详细介绍
2019/08/07 Python
Python基于stuck实现scoket文件传输
2020/04/02 Python
解决Python 写文件报错TypeError的问题
2020/10/23 Python
Django haystack实现全文搜索代码示例
2020/11/28 Python
Python 2.6.6升级到Python2.7.15的详细步骤
2020/12/14 Python
详解python的变量缓存机制
2021/01/24 Python
CSS3中几个新增加的盒模型属性使用教程
2016/03/01 HTML / CSS
HTML5新增的8类INPUT输入类型介绍
2015/07/06 HTML / CSS
求职推荐信范文
2013/12/01 职场文书
社区党员先进事迹
2014/01/22 职场文书
开会迟到检讨书
2014/02/03 职场文书
会议欢迎标语
2014/06/30 职场文书
工厂标语大全
2014/10/06 职场文书