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的Pyspider为例剖析搜索引擎的网络爬虫实现方法
Mar 30 Python
python结合selenium获取XX省交通违章数据的实现思路及代码
Jun 26 Python
python基础教程之Filter使用方法
Jan 17 Python
Python实现基本数据结构中栈的操作示例
Dec 04 Python
解决Spyder中图片显示太小的问题
Apr 27 Python
Tensorflow 训练自己的数据集将数据直接导入到内存
Jun 19 Python
python使用matplotlib绘制雷达图
Oct 18 Python
python实现根据文件格式分类
Oct 31 Python
Python itertools.product方法代码实例
Mar 27 Python
如何利用python web框架做文件流下载的实现示例
Jun 02 Python
python实现二分类和多分类的ROC曲线教程
Jun 15 Python
一行代码python实现文件共享服务器
Apr 22 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
经典的PHPer为什么被认为是草根?
2007/04/02 PHP
php5.3 不支持 session_register() 此函数已启用的解决方法
2013/11/12 PHP
PHP常见的6个错误提示及解决方法
2016/07/07 PHP
Yii2 queue的队列使用详解
2019/07/19 PHP
Jquery图形报表插件 jqplot简介及参数详解
2012/10/10 Javascript
js里取容器大小、定位、距离等属性搜集整理
2013/08/19 Javascript
原生js实现复制对象、扩展对象 类似jquery中的extend()方法
2014/08/30 Javascript
js判断滚动条是否已到页面最底部或顶部实例
2014/11/20 Javascript
JavaScript中的eval()函数使用介绍
2014/12/31 Javascript
jQuery实现带动画效果的二级下拉导航方法
2015/03/11 Javascript
js实现简单的左右两边固定广告效果实例
2015/04/10 Javascript
纯JavaScript实现的分页插件实例
2015/07/14 Javascript
学习javascript的闭包,原型,和匿名函数之旅
2015/10/18 Javascript
jQuery实现动态生成表格并为行绑定单击变色动作的方法
2017/04/17 jQuery
推荐三款不错的图片压缩上传插件(webuploader、localResizeIMG4、LUploader)
2017/04/21 Javascript
[02:41]2015国际邀请赛中国区预选赛观战指南
2015/05/20 DOTA
Python Queue模块详细介绍及实例
2016/12/27 Python
Python递归函数定义与用法示例
2017/06/02 Python
python文本数据相似度的度量
2018/03/12 Python
pycharm 配置远程解释器的方法
2018/10/28 Python
在linux下实现 python 监控usb设备信号
2019/07/03 Python
python 批量添加的button 使用同一点击事件的方法
2019/07/17 Python
Django Channels 实现点对点实时聊天和消息推送功能
2019/07/17 Python
Python collections中的双向队列deque简单介绍详解
2019/11/04 Python
python学生信息管理系统实现代码
2019/12/17 Python
CSS3 渐变(Gradients)之CSS3 径向渐变
2016/07/08 HTML / CSS
Fashion Eyewear美国:英国线上设计师眼镜和太阳镜的零售商
2016/08/15 全球购物
现代绅士日常奢侈品:Todd Snyder
2019/12/13 全球购物
颇特女士香港官网:NET-A-PORTER香港
2021/03/08 全球购物
android面试问题与答案
2016/12/27 面试题
高级电工工作职责
2013/11/21 职场文书
《画风》教学反思
2014/04/16 职场文书
数学教研活动总结
2014/07/02 职场文书
普通党员整改措施
2014/10/24 职场文书
python中使用 unittest.TestCase单元测试的用例详解
2021/08/30 Python
Redis 哨兵机制及配置实现
2022/03/25 Redis