pywinauto自动化操作记事本

作者:飞鸟逐岸 时间:2021-07-19 03:01:57 

一、什么是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()

四、总结

怎么样,挺简单的吧,其实看着简单,真正自己实践起来,还是费了一番周折的,任何一部分知识的获取与掌握,都需要有一个过程,继续加油吧!

来源:https://blog.csdn.net/HS_blog/article/details/83005047

标签:pywinauto,自动化,记事本
0
投稿

猜你喜欢

  • escape,encodeURI,encodeURIComponent函数比较

    2008-01-27 11:19:00
  • Python reversed函数及使用方法解析

    2023-01-24 16:10:53
  • asp用正则过滤html标签

    2008-01-19 16:34:00
  • 文件上传服务器-jupyter 中python解压及压缩方式

    2021-06-03 22:32:21
  • 在Python反编译中批量pyc转 py的实现代码

    2023-08-11 20:21:04
  • Python编程mac下使用pycharm小技巧

    2022-10-21 19:23:52
  • 使用 pytorch 创建神经网络拟合sin函数的实现

    2023-02-04 03:31:40
  • Python冲顶大会 快来答题!

    2022-05-27 08:10:56
  • 20行代码教你用python给证件照换底色的方法示例

    2023-04-03 23:48:32
  • 常用python数据类型转换函数总结

    2023-07-27 23:07:16
  • 批处理与python代码混合编程的方法

    2023-08-26 10:45:32
  • asp如何直接调用Excel数据?

    2010-06-28 18:26:00
  • JS重载实现方法分析

    2023-10-07 08:09:04
  • Ajax+Servlet+jsp显示搜索效果

    2023-06-14 08:29:34
  • 微软SQLServer密码管理的危险判断

    2008-11-24 17:34:00
  • 通过PHP current函数获取未知字符键名数组第一个元素的值

    2023-11-15 04:52:07
  • JSQL SQLProxy 的 php 版本代码

    2023-11-15 01:05:54
  • 经验之谈:MySQL与ASP.NET配合更强大

    2008-12-23 15:26:00
  • 在python中实现对list求和及求积

    2022-05-28 15:02:16
  • Django实现简单的分页功能

    2021-08-08 20:53:14
  • asp之家 网络编程 m.aspxhome.com