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爬虫实战之最简单的网页爬虫教程
Aug 13 Python
python虚拟环境virtualenv的使用教程
Oct 20 Python
Python基于property实现类的特性操作示例
Jun 15 Python
详解Django+Uwsgi+Nginx的生产环境部署
Jun 25 Python
selenium+python设置爬虫代理IP的方法
Nov 29 Python
感知器基础原理及python实现过程详解
Sep 30 Python
python实现KNN分类算法
Oct 16 Python
Python 实现try重新执行
Dec 21 Python
python3实现从kafka获取数据,并解析为json格式,写入到mysql中
Dec 23 Python
tensorflow 保存模型和取出中间权重例子
Jan 24 Python
Python select及selectors模块概念用法详解
Jun 22 Python
python使用selenium爬虫知乎的方法示例
Oct 28 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
来自PHP.NET的入门教程
2006/10/09 PHP
PHP 七大优势分析
2009/06/23 PHP
洪恩在线成语词典小偷程序php版
2012/04/20 PHP
PHP下载远程图片的几种方法总结
2017/04/07 PHP
Laravel学习教程之View模块详解
2017/09/18 PHP
PHP实现Huffman编码/解码的示例代码
2018/04/20 PHP
XAMPP升级PHP版本实现步骤解析
2020/09/04 PHP
利用Ext Js生成动态树实例代码
2008/09/08 Javascript
JavaScript 存在陷阱 删除某一区域所有节点
2010/05/10 Javascript
JQuery UI DatePicker中z-index默认为1的解决办法
2010/09/28 Javascript
仅IE9/10同时支持script元素的onload和onreadystatechange事件分析
2011/04/27 Javascript
使用OpenLayers3 添加地图鼠标右键菜单
2015/12/29 Javascript
JavaScript实现类似拉勾网的鼠标移入移出效果
2016/10/27 Javascript
详解JS去重及字符串奇数位小写转大写
2016/12/29 Javascript
表格展示利器 Bootstrap Table实例代码
2017/09/06 Javascript
Angular 4根据组件名称动态创建出组件的方法教程
2017/11/01 Javascript
使用Vue写一个datepicker的示例
2018/01/27 Javascript
浅谈PDF.js使用心得
2018/06/07 Javascript
6行代码实现微信小程序页面返回顶部效果
2018/12/28 Javascript
ionic4+angular7+cordova上传图片功能的实例代码
2019/06/19 Javascript
[01:15:44]首部DOTA2纪录片今日23时全网上映
2014/03/19 DOTA
使用XML库的方式,实现RPC通信的方法(推荐)
2017/06/14 Python
Python 加密的实例详解
2017/10/09 Python
python+matplotlib绘制3D条形图实例代码
2018/01/17 Python
Python实现的圆形绘制(画圆)示例
2018/01/31 Python
Django中Forms的使用代码解析
2018/02/10 Python
python实现局域网内实时通信代码
2019/12/22 Python
Python 内置函数globals()和locals()对比详解
2019/12/23 Python
html5 web本地存储将取代我们的cookie
2012/12/26 HTML / CSS
Collection和Collections的区别
2016/05/02 面试题
2014党员学习兰辉先进事迹思想汇报
2014/09/17 职场文书
2015年法院工作总结范文
2015/04/28 职场文书
于丹讲座视频观后感
2015/06/15 职场文书
Python3 使用pip安装git并获取Yahoo金融数据的操作
2021/04/08 Python
go类型转换及与C的类型转换方式
2021/05/05 Golang
springBoot基于webSocket实现扫码登录
2021/06/22 Java/Android